Her JavaScript Geliştiricisinin Okuması Gereken 12 Kitap

Not: Resimdeki web geliştirme kitaplarının rastgele koleksiyonu.

Ben JavaScript kitaplarının büyük bir hayranıyım. Uzun süredir JavaScript öğrenen biri olarak, piyasadaki popüler JavaScript kitaplarının çoğunu okumaktan zevk aldım. Bu günlerde yeni başlayanları sıralamayı hedefleyenleri geçme eğilimindeyim, ancak küçük bir deneyime sahip olan JavaScript geliştiricileri için hazırlanmış çok sayıda kitap okuyorum.

Bu, JavaScript kitapları için tuhaf bir zamandır. ES6’da JavaScript dilinde büyük bir güncelleme yaptığımız için, günümüzün JavaScript sözdizimi ve stili çoğu kitapta tartışılan ES3-ES5 stili JavaScript’ten oldukça farklı görünüyor, ancak ES6 gerçekten ES5’in bir süperseti olduğundan, çoğu Eski kitapların hala geçerli olan öğrenme külçeleri var.

Başka bir deyişle, eski kitaplar eski değildir, sadece yaşlarını biraz gösteriyorlar - sadece 2 yıl önce yayımlananlar bile. 60'lı yıllardan beri hala argo kullanan kıdemli bir vatandaşla konuşmak gibi görünebilir. JavaScript'te yeniyseniz, sadece argümanlarda dizi yöntemlerini kullanmak için kullanılan eski zamanlayıcıların çılgın bilgisayar korsanlarını keşfetmek eğlenceli olabilir. JS tarih dersinin tadını çıkarın.

JavaScript topluluğundaki bazı yazarlar size ES6'yı öğretmeyi amaçlayan kitaplar yazmışlardır. Temel JavaScript'i biraz öğrendikten sonra bunları okumanızı öneririm. Henüz ES6'yı bilmiyorsanız, “ES6 Nasıl Öğrenilir” konusunu okuyun.

Sonunda, tüm yeni JS kitap yazarları ES6 almaya hak kazanacak ve ardından JS kitap dünyası normale dönecektir. Önerilerimi kabaca öğrenim sırasına göre listeleyeceğim.

Diğer kitap yayınlarımda olduğu gibi, Amazon bağlantıları bağlı kuruluş bağlantılarıdır ve harcadığınız paranın bir kısmı JSHomes ile evsizlikle savaşmak için kullanılacak.

Bu kadar konuşma yeter. Kitapları getir!

Kitaplar

  1. “Çocuklar İçin JavaScript: Programlamaya Oynak Bir Giriş” Nick Morgan

Başlığa göre, bu kitap çok temel programlama kavramlarının tuhaf bir keşfi, ancak bunun sizi aldatmasına izin vermeyin. Çocuklar için kitaplar sadece çocuklar için değildir. Daha önce hiç koda dokunmadıysanız, tamamen büyümüş olsanız bile, burası başlamak için iyi bir yerdir. Yüzmeyi öğrenmeden önce derinlere dalmak sinir bozucu bir deneyim olabilir. Antrenmana bazı kolay kazançlar ile başlaman daha iyi olur.

2. Eric Elliott tarafından "Yazılım Oluşturma" (feragatname: Benim), JavaScript'teki işlevsel programlama ve nesne kompozisyonunun araştırılmasıdır. Tüm yazılım tasarımı kompozisyondur: karmaşık problemleri daha küçük problemlere bölmek ve bu çözümleri oluşturmak. Çoğu geliştirici kompozisyon teknikleri konusunda sınırlı bir anlayışa sahiptir. Bunun değişmesinin zamanı geldi.

“Yazılım Oluşturma” da Eric Elliott, hem işlev bileşimi hem de nesne bileşimi de dahil olmak üzere bileşimin temellerini paylaşır ve bunları JavaScript bağlamında inceler. Kitap, okuyucunun basit yapı taşları kullanarak karmaşık uygulamaların nasıl oluşturulacağını ve yapılandırılacağını daha iyi anlamasına yardımcı olmak için hem işlevsel programlama hem de nesne yönelimli programlamanın temellerini kapsar.

3. “İkili JavaScript: Programlamaya Modern Bir Giriş” Marijn Haverbeke tarafından

Bu kitap bir sanat eseridir. Açık bir dil kullanarak açık bir yol haritasına sahip temel kavramlar arasında size rehberlik eder. Ustaca oluşturulmuş ve düzenlenmiştir ve çoğu programlama kitabının aksine, pratik yapabileceğiniz egzersizlerle doludur. Programlamanın temellerini lisede veya kolejde öğretiyor olsaydım, bunu ders kitabı olarak kullanırdım.

4. “JavaScript: İyi Parçalar” Douglas Crockford tarafından

Şimdi saçma görünebilir, ancak bu kitap yazıldığı zaman, JavaScript hala tarayıcılarda küçük bir betik dili olarak hayata başlayan genç bir dildi. O zamanlar, tarayıcılar ciddi uygulama geliştiricileri tarafından keşfedilmeye başlanıyordu.

2004'ten önce, tarayıcıda çalışan gerçek uygulamaları görmek çok nadirdi. Tarayıcı zar zor etkileşimliydi. Herhangi bir veriyi sunucuya iletmek için sayfaların yeniden yüklenmesi gerekiyordu, hakkında konuşmaya değer hiçbir depolama kapasitesi yoktu. JavaScript, öncelikle fare vurgulu durumları gibi önemsiz kullanıcı arayüzü efektleri oluşturmak için kullanıldı.

JavaScript, C / C ++, C # ve Java gibi derlenmiş dillerde kod yazan “gerçek programcılardan” birçok şakanın hedefi idi. Tarayıcı için gerçek bir programlama yapmak istiyorsanız, flaş kullandınız.

O günlerde, JavaScript'i basitleştirmek kolaydı ve herkes öyle görünüyordu, ancak Douglas Crockford, Brendan Eich'in şu anda programlama kitleleri tarafından gerçekten takdir edilmeye başlanan dilde bazı külçeler sakladığını fark etti. Bu kitap, bu özelliklerin temellerini inceler ve JavaScript'in gerçekte ne kadar özel ve harika olduğu konusunda size yeni bir takdir verebilir.

5. “JavaScript Uygulamalarını Programlama: Düğüm, HTML5 ve Moderns JS Kitaplıklarıyla Sağlam Web Mimarisi” Eric Elliott (benim)

Uygulamalar geliştirmek için JavaScript geliştiricilerini işe almaya başladığımda, çok azının sağlam uygulama mimarisi oluşturmak için JavaScript'i nasıl kullanacağını anlamaları beni çok etkiledi. Bunu göz önünde bulundurarak, bazı JavaScript en iyi uygulamalarını kapsayacak bir kitap yazmaya, insanları prototiplere tanıtmaya, nesne kompozisyonuna ve en azından fonksiyonel programlamanın temel kavramlarına (tipik bir JavaScript uygulamasının nasıl oluşturulacağını ve sürdürüleceğini anlamaya yetecek kadar) yazmaya karar verdim. ve daha sonra bu kavramları, uygulama alanı ne olursa olsun, uygulamaların çoğunda ortaya çıkan ortak kaygıların bir kısmını oluşturmak için kullanın.

Pek çok kitap “JavaScript'i nasıl kullanırım?” Sorusuna cevap veririm, “Gerçek bir uygulama oluşturmak için JavaScript'i nasıl kullanırım?” Sorusunu cevaplamak istedim.

Teknoloji kitabın yayınlanmasından bu yana iki yıl içinde çok değişti, ama dürüst bir fikrimce (yazarın objektif olduğu kadarıyla), bugün hala piyasadaki JavaScript uygulaması mimarisine en iyi bakış. JavaScript anlayışınızı derinleştirmenin yanı sıra, Düğümle ilgili temel bilgiler, RESTful API'ler, kimlik doğrulama ve yetkilendirme, özellik geçiş sistemleri, günlüğe kaydetme ve daha fazlasını öğreneceksiniz.

6. “JavaScript'in Etkisi: 68 JavaScript'in Gücünü Kullanmanın Belirli Yolları” David Herman

JavaScript’e biraz maruz kaldıktan sonra, “Etkili JavaScript”, sizi rehberinde deneyimli bir usta programcının öğrettiği örnek dersleri gösteren, rehberli bir dili daha derinlemesine gezdirir.

JavaScript'in tuhaflıklarının bazılarına kayan nokta sayısı kesinliğinden (JavaScript'in yalnızca bir sayı türüne ve kayan nokta türüne sahip olduğu için) tür zorlamaların ve noktalı virgül ekleme tuhaflıklarına kadar tanıtılacaksınız. Kitabın geri kalanı aynı şekilde devam eder; işlevler, nesneler, diziler, kütüphane ve API tasarımı ve eşzamanlılık ile çalışmak için en iyi uygulamaları araştırır. Beceri seviyen ne olursa olsun, yeni bir şeyler öğreneceğine söz veriyorum.

7. “JavaScript: Tanımlayıcı Kılavuz”, David Flanagan tarafından

Definitive Guide, web uygulamaları oluşturmak isteyen birisinin perspektifinden JavaScript ve web platformu API özelliklerinin derinlemesine araştırılmasıdır. Bu noktada, muhtemelen güvenli bir şekilde göz ardı edebileceğiniz IE'nin eski sürümleriyle ilgili uyarılarla serpiştirilmiş pek çok dil özelliğine oldukça kapsamlı bir genel bakış. Kitabın altı basımı olmuştur ve umarım gelecek daha birçok basım vardır. Önceki basımlara sahiptim ve yeni bir sürüm çıkarıldığında her zaman yeni şeyler öğrenirim.

8. “Simpsonları Bilmiyorsunuz”, Kyle Simpson

Bu gerçekten bir dizi kitaptır - hepsi tarz ve kapsam bakımından benzer, bazıları diğerlerinden daha büyük ve hepsi çok iyi.

Uzun zamandır JavaScript'te programlama yapıyorum. JavaScript spesifikasyonlarının birçok versiyonunu çalıştım ve spesifikasyonun yeni versiyonlarının geliştirilmesini yakından takip ettim, ancak Kyle, henüz keşfedilmemiş veya keşfedilmemiş dilin bir çok parçasını ortaya çıkarmayı başarmış tüm küçük köşe ve vinçleri keşfetti .

“Kesin Rehber” in derin bir dalış olduğunu düşünüyorsanız, tüplü giysilerinizi kırın ve derin deniz dalgıç okyanus gezgini için hazırlanın. Daha önce hiç kimsenin karşılaşmadığı bazı JavaScript türlerini görmek üzeresiniz (bu seri zaten yazılmadan önce).

Bu dizide bulamayacağınız şey, yazılım mimarisi, derin programcı bilgeliği ya da birçok farklı dile kolayca yayılabilecek bir yazılım tasarımı ilkeleri bolluğu hakkında yapılan çok fazla konuşma. Ancak, kesinlikle yeni bir değer kazanmanıza ve JavaScript'i daha iyi anlamanıza yardımcı olacaktır. Kyle’ın dil özelliklerine derinlemesine dalmaya odaklanan tekil odak, TC39 ekibinin bile bir şeyler öğrenebileceğini düşündüğüm nadir bir hazinedir.

9. Reginald Braithwaite tarafından “JavaScript Allongé: The Six Edition”

JavaScript Allongé, özünde işlevlerde düşünme hakkında bir kitaptır. Küçük, ayrık birimlerden esnek yazılım oluşturmak.

Bununla birlikte, aşırı kuralcı veya fikirsiz olmamayı deniyor. Giriş bölümünden ödünç almak için:

“JavaScript Allongé, yazılım geliştirme bağlamında JavaScript en iyi uygulamaları sorununu ele almaya çalışmamaktadır, çünkü JavaScript Allongé uygulama hakkında bir kitap değildir, düşünme hakkında bir kitaptır.”

Kitabı okurken, yazarın verdiği sözleri tuttuğunu fark edersiniz. Bu kesinlikle okuduğunuz ilk JavaScript kitabı olmamalıdır. Reginald, kısmi uygulamaları ve körüklü fonksiyon ifadelerini gösterdikten sonra IIFE ve kapanış gibi orta fonksiyon kapsamı konularında yavaş inşa ederek “const” gibi basit kavramları tanıtır.

Giriş niteliğindeki JavaScript kitaplarının çoğu, değerlerden ve bu değerlerin “var”, “let” veya “const” kullanarak ciltlerle nasıl temsil edileceğinden bahsederek akıllıca başlar. Reginald atışı iyi bir nedenden ötürü çeviriyor - beynini dans ettirecek. Kitap, fonksiyonlar hakkında farklı ve derin düşünmenize yardımcı olmaya çalışıyor ve çalışıyor.

JavaScript uygulamalarını öğrendikten sonra, JavaScript uygulamaları oluşturmak için işlevsel ve nesne yönelimli programlama tekniklerini nasıl birleştireceğinizi keşfetmeye hazır olduğunuzda okumalısınız.

10. “Harekat Node.js”, Mike Cantelon, Marc Harter, TJ Holowaychuk ve Nathan Rajlich tarafından

“Eylemdeki Node.js”, HTTP / HTTPS, Connect / Express ara yazılımı, Socket.IO ile gerçek zamanlı mesajlaşma, veritabanlarını kullanma ve benzeri gibi temel konuları kapsayan temel Düğüm uygulama geliştirmeye harika bir giriş niteliğindedir. Düğümde yeniyseniz, burası başlamak için harika bir yer.

11. “Yüksek Performanslı Tarayıcı Ağı”, İlya Grigorik

Mükemmel uygulama performansının önemini abartmak zordur. Milisaniyelerin sayfa yükleme sürelerinin kısaltılması ve kullanıcı arayüzünün düşürülmesinin azaltılması, yalnızca mükemmel bir kullanıcı arayüzü tasarım revizyonu ile kazanılabilecek yatırım getirileri sağlar.

Bu kitap, HTTP2, veri akışı, WebSockets, WebRTC, DataChannel vb. Gibi yüksek etkili performans konularını kapsar.

Başka bir deyişle, bu kitap, performans profilini optimize ederek daha başarılı bir uygulama oluşturmak için kesin bir rehberdir.

12. Boris Smus tarafından “Web Audio API”

Her gerçek JavaScript Rock Star'ın bu kitaba ihtiyacı var. Sonuçta, gitarınızı web tarayıcınıza takana kadar gerçek bir JS rock yıldızı değilsiniz. Bunların “her JavaScript geliştiricisinin okuması gereken” kitaplar olduğunu söylediğimi biliyorum, ancak bu yalnızca ses ve müzikle oynamayı seven JavaScript geliştiricileri içindir. Çoğu JavaScript geliştiricisi bu API'yi asla öğrenmeden kurtulabilirdi ve bu onlara hiçbir şekilde zarar vermezdi - ama bu çok sıkıcı.

Bu kitap benim listemizde çünkü müzik ve ses mühendisliğini seviyorum. Web ses API aslında web platformu standartlarını kullanarak ses üretmek ve işlemek için ilgili API sistemidir. Tarayıcılarda ve Düğümde kullanabilirsiniz.

Web ses API'sini kullanmak için, bir grafikteki düğümleri değiştirirsiniz. Normalde, sizi kullanışlı bir referansa yönlendiririm, ancak bir ses mühendisi değilseniz, biraz bunalmış olabilirsiniz. Bu kitap sizi çeşitli ses düğüm tipleri boyunca yönlendirir ve nasıl bir araya getireceğinizi, sesleri hassas bir şekilde programlamak, zaman içinde parametreleri değiştirmek, ses efektlerini uygulamak ve hatta ses görselleştirmeleri oluşturmak için zamanlama API'si ile birlikte çalışmanızı sağlar.

Başka bir deyişle, çok eğlenceli.

EricElliottJS.com'da ücretsiz dersinize başlayın

Eric Elliott, “Yazılım Oluşturma” ve “JavaScript Uygulamalarını Programlama” kitaplarının yazarıdır. EricElliottJS.com ve DevAnywhere.io'nun kurucu ortağı olarak, geliştiricilere temel yazılım geliştirme becerilerini öğretiyor. Kripto projeleri için geliştirme ekipleri kurup danışmanlık hizmeti veriyor ve Adobe Systems, Zumba Fitness, The Wall StreetJournal, ESPN, BBC ve Usher, Frank Ocean, Metallica ve daha birçok kayıt sanatçısı için yazılım deneyimlerine katkıda bulundu.

Dünyanın en güzel kadını ile uzak bir yaşam tarzı var.