Javascript programlamada büyük kolaylık sağlayan bir geliştirme ortamı

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
24,753
Dün bir iş arkadaşının tavsiyesi üzerine WebStorm javascript geliştirme ortamını benim Linux masaüstü bilgisayara kurdum ve dünden beri kullanıyorum. Sadece 1 günlük kullanımda bile çok büyük faydasını görüyorum. Ayrıntılı özelliklerini daha kullanmayı bilmiyorum, ama mevcut javascript, css, html, ve bash shell dosyalarını analiz ediyor olması ve hataları bulması, potansiyel bug olabilecek yerleri işaretlemesi, uyarılarda bulunması ve programda geçen kelimelerdeki imla hatalarını da bulması çok faydalı oldu.

Daha önce javascript kodunu hazırlayıp tarayıcıda deniyordum. Eğer çalışıyorsa öylece bırakıyordum. Ama şimdi WebStorm'un yaptığı analiz sonrasında bir sürü hata, uyarı ve potansiyel bug'ı düzeltme fırsatım oldu. Şu anda deneme sürümünü kullanıyorum ve muhtemelen 1 ay sonra bir lisans alacağım. Yıllık lisans bedeli şahsi kullanım için 60 Avro. Javascript ile uğraşan herkese tavsiye ederim.

1614765596124.png
 
  • Beğen
Reactions: nt
Şu anda editör olarak ben alışık olduğum emacs'i kullanmaya devam ediyorum, ama arada bir kodu WebStorm'da açıp analiz ettiriyorum. Programın ayrıntılarını öğrendikçe daha farklı kolaylıklardan da yararlanmak mümkün. Artık zamanla keşfedilir bunlar.
 
Bence Notepad++ kafi. Onu da renklendirme seçeneklerinden ve bazı basit özellikler için kullanıyorum.

Evet sağladığı pek çok kolaylık var ama eski usul çalışmak her zaman daha dikkatli olmayı sağlıyor. Diğer türlü program ne de olsa bulur diye bir dayanak noktası oluyor ve bu dikkati zamanla köreltiyor. En azından bana etkisi öyle oluyor. Ayrıca her konuda belirli frekanslarda birilerine bağımlı kalmak (ödeme yapmak) yaşam biçimi olarak da iyi değil.
 
Evet tamamen buna bağımlı kalmamak lazım. Ben de zaten sadece bir tür LINT olarak kullanıyorum, yani kodu kontrol ettiriyorum. Node.js paketi ile gelen de bir ESLINT diye bir program var, ama bir sürü değişik dans ve tören gerekiyor sırf programı kurmak için. Sonra da programı yapılandırmak için ayin yapmak gerekiyor. O da bittikten sonra komut satırında çalıştırıyorsun ve javascript dosya ismini veriyorsun ...

Ama bu WebStorm sen daha dosyayı açar açmaz analize başlıyor ve kod değiştikçe analizi de güncelliyor. Bulduğu uyarıların üzerinde fare ile hover edince de sana problem ile ilgili dokümantasyon gösteriyor.
 
Hatta javascript'te yeni birşey de öğretti bana. Ben fonksiyon içindeki lokal değişkenleri var ile tanımlıyordum ve bu şekilde tanımlayınca sadece ilgili blokda görünür olduğunu düşünüyordum. Ama öyle değilmiş, tanımlandıktan sonra fonksiyon sonuna kadar görünür oluyormuş. Böyle yüzlerce uyarı verdi. "İstersen düzelteyim hepsini" dedi, ben de buyur dedim, hepsini düzeltti. Değişmeyenleri const yaptı, değişenleri de let yaptı. Süper.
 
Tembellikteki ilk adım. Senin için küçük kapitalizm için büyük bir adım. :D
 
Ne yapayım, birden fazla proje paralel olarak yürüyor, hepsinde de gecikme var. Zaman tasarrufu sağlayabilecek herşeyi kullanmam lazım.
 
Öyle tabi de böyle programlar herkesin bu işi yapmasını kolaylaştırıyor ama aynı zamanda uzmanlaşmayı güçleştiriyor. Sözüm meclisten dışarı tabi. Uzmanlaşmadan, derinleşmeden yapılan her iş aslında pratikte seni katılımlı-kullanıcı yapıyor. JS üzerine sadece sana yetecek kadarını öğrenip, evrensel temellere herhangi bir etkin olamıyor. Bilinçli bir tercihte hiç sıkıntı yok çünkü o kadarı lazım. Önemli olan, yaptığın işte sınırlarını tanımak.
 
Ben daha önce bunun Php Storm programını kullanmıştım. Gerçekten iyi bir program.
 
VsCode, Sublime, Atom.. bunlar gerçek iyi editorler. Eski bir sublimetext'ci olarak VsCode'a geçeli uzun zaman oldu. WebStorm biraz hantal kalıyor. Tek proje üzerinde çalışıyorsan sorun yok. Ama birden fazla projeyi aç kapa filan uğraşıyorsan pratik değil.

Bu arada jQuery artık kullanmamanızı tavsiye ederim.

Bizim audio cihazlarının kontrol arayüzünde ben genelde temel HTML, CSS, ve javascript/JQuery kullanıyorum. Zaten 30 dolarlık işlemci, linux'u zor çalıştırıyor, o yüzden öyle kapsamlı PHP bazlı web arayüzü yapamıyorum. JQuery'yi neden önermiyorsun?
 
Benim web arayüzleri çok basit. Böyle kapsamli grafikler, görseller falan gerekmiyor. Bir ADSL MODEM'in web arayüzü gibi düşün. Ama bütün tarayıcılarda çalışmasını istiyoruz tabi, windows, linux, mac ve bunlarda çalışan Chrome, Firefox, Edge vs. Web arayüzü bizde low level ayarları yapmak için gerekiyor. Son kullanıcı pek bulaşmıyor buraya. Son kullanıcı için Android ve iOS uygulamalar var, onlar bu uygulamalarla işlerini hallediyor.

Şu anda çalıştığım media player'in web arayüzü görseli :D Sistem varsayılan ayarları, ağ ayarları ve firmware güncelleme.

1614808050393.png
 
jQuery kullanmak yanlış (hata) değil. Kullanmamak için geçerli olan argüman, günümüzde bir ihtiyacı kaşılamıyor ve daha iyi seçenekler var. Bende kullanıyorum (hatta şu an geliştirdiğim projede kullanıyorum) ama gene de günümüzde JQuery gereksiz demek daha doğru.

Aslında olayı çıkış noktasından değerlendirmek gerekiyor. JS bir dönem tüm tarayıcılarda tutarlı çalışmıyordu, jQuery buradan çıktı. Günümüzde böyle bir sorun yok, yani jQuery de aslında o dönem açığı giderdi ve eksik tamamlanınca görevini tamamlaşmış oldu. Dahası JQuery'nin yapabileceği her şeyi JS daha hızlı, az kod ile yapıyor ve JS tüm tarayıcılarda bir standart yakaladı. Mesela VanillaJS'ye göz atmanı tavsiye ederim.

 
Madem konusu var şuraya bir soru sorayım :D

Elimizde foreach döngüsü ile veritabanındaki kayıt sayısı kadar oluşturulan inputlar var.
Bu inputların içine rakam girilecek.
Her rakam girildiğinde inputların en altındaki bir div e toplama yapacak. Ve ayrıca bu rakamlar veritabanına kayıt edilecek.
Benim JS ile hiç alakam olmadığından sadece onKeypress eventi ile tuşa basıldığını kontrol ettirebildim. Gerisini çözemedim. Toplama çıkarma filan hak getire.
Aslında ben bu rakamları bir değişken içine alabilsem sonrasında php ile çözerim.
 
Bu konu uzerinden zaman gecmis ama asil alanim yazilim oldugu icin bir ekleme yapayim. Vue.js, Ember.js, React, Redux, Angular vs. bu JS framework/libraryler ozellikle buyuk takimlarda kod gelistirirken cok onemli oluyor. Tek basina bir proje gelistiriyorsan ve hedefledigin browserlar yapmak istediklerini destekliyor ise, hersey ile yazabilirsin. Bir kez yazip birdaha guncelleme yapma sansin olmayacak ise baska, duzenli guncelleyeceksen baska stratejiler takip etmek gerekiyor.

JQuery olgun ve test edilmis bir kutuphane. Bundan bir framework olusturmak zor bir is. Proje buyudukce kontrolden cikiyor. Yani tek basina buyuk bir projeye kalkisiyorsan, yine birinci gunden bir framework ile baslamak mantikli. Bu arada JS projelerinin ilk kurulumu kolay degil ozellikle konunun uzmani degilseniz. O yuzden create-react-app gibi helperlar ile proje kurup, proje icindeki convention (islerin yapilis sekli) ne sadik kalmak en mantiklisi.

Linterlar yine konuya cok hakim olmayan veya olan farkli developerlar bir arada calisirken cok hayati. Ama ozellikle kritik komponentlere test yazmak bunlarindan hepsinden daha onemli. Tabi urettiginiz urunde bir bug olusmasinin ne kadar kritik bir oneme sahip oldugu ne kadar yogun ve farkli katmanlarda testler yazmaniz gerektigini belirliyor.

VSCode ve eklentilerinin JS destegi cok iyi, JetBrainsin tum urunlerini calistigim sirket vermesine ragmen, JS gelistirirken VSCode dan baska birsey kullanmiyorum. Java/Kotlin gibi dillerle gelistirme yaparken JetBrains urunleri avantajli oluyor. 10+ seneye yakin sadece Vim ile profesyonel anlamda kod yazmis biri olarak (JS/Ruby/Go etc.) ve smart ediyor karsiti olmama ragmen, VSCode a gectim (Java/Kotlin/C++ haric), tavsiye ederim. Ustelik bedava.
 
Evet VSCode çok methediliyor. Ama arkasında Microsoft olduğu için baya öngargılıyım :) Şu anda sadece Merlin firmware ile uğraşırken kullanıyorum.
 
Microsoft Satya Nadela onderliginde ciddi miktarda sicrama yapti son yillarda. Cok uzun yillardir Mac kullanmama ragmen, WSL2 den sonra kisisel kullanimda Windows'a sans verdim ve ciddi gelistigini gordum. Acik kaynaga yaptiklari destek, Linux destegi ve son yillarda urettikleri urunler muazzam. Benim on yargilarimi kirdilar.
 

Forum istatistikleri

Konular
7,299
Mesajlar
123,406
Üyeler
2,949
Son üye
dündenbiri

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top