Ah, Ruby on Rails. Başlangıç koşuşturmasının şampiyonu ve yan proje. Özünde, insanların bir bütün olarak topluluğun tadını çıkarmasının nedenini açıkladım, çünkü hepsi bu iki olguyu takdir ediyor.
Kesinlikle başlangıç dünyası ve geliştirici topluluklar için çok şey yaptı. Web dünyasındaki etkilerinde JavaScript gibi dillere çok benzer. Sadece Rails'in çok davetli olması ve Ruby'nin çok güzel olması nedeniyle gelişime dönüşen çok az insan biliyorum.
Ruby on Rails'in büyük projeniz için doğru olduğunu görebiliyorsunuz, en temel konulara dalalım ve öğrenelim.
Ruby, Perl ve PHP'nin tüm faydalarına sahip, onlar ile getirdikleri sözdizimi sıkıntıları olmadan, dinamik, yüksek amaçlı bir dildir.
Ruby tarafından oluşturuldu Yukihiro “Matz” Matsumoto 1990'ların ortasında. Ve Rails çerçevesinin içinde, dolayısıyla Ruby on Rails'in içinde kullanılır. Raylar, Ruby'nin sunduğu çok fazla güç kaynağından yararlanan bir açık kaynak tam yığın web uygulaması çerçevesidir. Aynı zamanda tek bir tekil çerçevede pişirilmiş organizasyon ve büyük programcı metodolojileri sunuyor ve bunun üzerine inanılmaz derecede genişletilebilir.
Artık, çok daha fazla teknik ayrıntıya girmeyeceğim, sonuçta bunlar hızlı bir Google aramada bulabileceğiniz şeyler. Öyleyse konuşmanın etine geçelim.
Rails'in hayatınızı kurtaracağını söylemek aşırı abartı olabilir, fakat gerçek şu ki, Rails ve Ruby ile programlamaya başlamak için başka herhangi bir dil veya çerçeveye göre daha fazla insan aldım. Çevreyi bir bütün olarak programlamaya yeni başlayanlar için tamamen ulaşılabilir olduğunu düşünüyorum. Örneğin, topluluk oldukça homojen ve aynı hedeflere odaklanmış görünüyor. Bu, dikkatinizi yönlendirmeye çalışan binlerce kişiye geldiğinde gerçekten çok şey ifade ediyor.
JavaScript topluluğunda başlayacağınızı varsayalım, vahşi batıya benziyor. Bu topluluğun robotikten jQuery'den Node'a Backbone'a kadar gelişmiş istatistiklere kadar test edilmesine kadar inanılmaz derecede şaşırtıcı şeyler var ve çok fazla dikkatinizi çekiyor.
Pek çok insan çok farklı yönlere girmeye çalışıyor, yeni başlayanlar için kimin takip edeceğine karar vermesi zor olabilir.
Belki de bu iki toplumdan gelen bir sürü insan vardır, JavaScript'te neyi önemsedikleri, Ruby ve Rails'de bir çerçeve veya dil olarak önem verdiğimiz konularla aynı değildir.
Her şeyden öte güzel bir programlama dili elde edersiniz.
Görüntü ray Shutterstock üzerinden.
Kişisel tercih sadece burada, ama Ruby'nin şimdiye kadar yaratılmış en güzel programlama dili olduğunu düşünüyorum. Kodlamak için kullandığım en şaşırtıcı şey, ve işimdeki uzun bir programlama gününden eve dönerken yanımda bir şeyler yaratmak beni gerçekten motive ediyor. Yani bir dilin sizin için eğlenceli olduğunu öğrendiğinizde, 8-10 saatlik programlamadan sonra yaptığınız iş günüdür. Herkes için aynı olmayabileceğinin farkındayım, ancak bir kural olarak, Ruby'nin yaratıcısı gerçekten okunabilir bir sözdizimi için çabaladı ve gittikçe karmaşıklaşmamıştı. Clojure’in yaratıcısına, bir dilin inşasına yaklaşma tarzına çok benzer: süreç. Her ikisi de karmaşıklık konusunda sadelik seçtiler, çünkü hepimiz basitlikle büyük bir karmaşıklık geldiğini biliyoruz; ve genellikle tam tersi, dolayısıyla Ruby ve Clojure gibi şeylerin güzelliği (eksi Clojure'deki parantezlerin aşırı kullanımı, ugh ).
Rails topluluğunda takip edilecek bir yol bulmak çok basittir. Diğer dillerde 'tadımcıların' kim olduğunu bilmek biraz daha zordur, ancak Rails'de bu çok açıktır. Bu insanları takip etmeniz gerektiğini söylemez, ama o insanlardan ağır ağırlığın etrafında oynadığı yeri bulabilir ve oradan oradan gidebilirsiniz.
Tipik olarak ağır ağırlıklar, onu destekleyen canlı bir topluluğun merkezinde bulunan Rails'de projelere veya çabalara sahiptir. Yani bunlar her zaman içine atlamak için harika yerlerdir. Son olarak, Rails çok deneysel bir çerçeve ve siz onu kullandıkça kodlamak için ileriye dönük bir düşünce deneyimidir.
Yeni başlayan biri olarak sadece sözdizimi ve topluluğun tadını çıkarmayacak, aynı zamanda yeni şeyler öğrenmek için de zorlanacaksınız. Ve bu, bu programlama dünyasında yeni şeyler öğrenmekle ilgilidir.
Ruby on Rails en güçlü araçlardan biridir ve dünyanın her yerindeki en yetenekli araçlar, vadi ve girişimler yıllardır görülmüştür.
Bu sözdizimi, saatlerce kalkma ve koşma yeteneği, inanılmaz derecede hızlı prototipleme, her ne olursa olsun, çıkardı.
Her tarafındaki raylar ve dükkanlar da bunun yüzünden kalktı ve pudingteki şeker, sizin için neden lezzetli bir muamele olduğunu açıklıyor. Sadece bunu benimseyen çok sayıda başka şirketiniz var ve benzer sorunlarla karşılaşıyorsunuz, aynı zamanda savaşta test edilmiş bir çerçeveye de sahipsiniz.
Bu bir Alfa ürünü değil, bir Beta ürünü değil. Bu, geliştiricilerin kod düzenlemeleri için soyut bir düşünce süreci değildir. Bu, her biri bir kişi tarafından başlatılan bu topluluğu oluşturmak için bir araya toplanan insanlardan elde edilen sonuçlardan bazılarıdır. DHH arasında 37signals .
Yine, topluluğa harcayacağım çünkü çok önemli. Bu, ihtiyaç duyduğunuz herhangi bir şekilde tam anlamıyla yardım bulabileceğiniz, evrimleşmiş ve olgunlaşmış bir topluluktur (bir anlamda). Raylarda programlamayı seven ya da sadece sorunlarınızı çözmek için danışmak isteyen kişiler olsun. Rails ortamlarında NoSQL kullanmayı sevenlerin yanı sıra Varlık Boru Hattından nefret etmeyi sevenler için tüm yol;)
Bunun hakkında konuşmak, hem yeni başlayanlar hem de yeni başlayanlar için harika bir şey. Tüm JavaScript (veya CoffeeScript), CSS ve görüntüleri, ilgili alt klasörleri barındıran bir klasörde düzenlemenize yardımcı olan varlık borusu adı verilen bir kuruluş aracı vardır. Bu kendi içinde faydalıdır. Sonuç olarak, ürününüzü kodlamak için bir dilde arama yapmak için bir başlangıç arıyorsanız, Rails'e bir şans verin. Sadece sizi şaşırttığını görebilirsiniz.
Rails'in gerçekten attığı bir başka yer ise kişisel projeler alanında.
Birçok geliştirici oldukça benzerler, çünkü onlar akıllı ve yetenekli kişilerdir. Biliyorum biliyorum, bu bir kural değil, ama yine de çoğu zaman konunun gerçeği. Ve bu tür bir doğadaki insanlar genellikle öğrenmek, gelir elde etmek için kullanabilecekleri kişisel projelere sahip olmak isterler. Ve tanıdığım herkes Rails'in bunu yapmanın mükemmel bir yolu olduğunu kabul ediyor.
Görüntü ray Shutterstock üzerinden.
Bir Rails uygulaması kurmak ve dağıtmak için Heroku gibi araçları kullanarak tam anlamıyla 1, 2, 3 adım ya da 1, 2 adımdır. Bu harika. Aslında Rails kullanıyorum ve Heroku blogumu işlemek için. Her değişiklik yaptığımda, Heroku için üretim varlıklarını derlerim, Github'a basarım ve ardından Heroku'ya basarım. Bu kadar basit. Ve eğer yeni bir bilgisayarım varsa aşağı çekmek istiyorum, anlaması biraz kolay olan bazı uzaktan kumandaları değiştiriyorum. terminal büyüsü ve işte bu - hack yapmaya hazırsınız.
Geliştirme sürecinin çoğu zaman yanlış anlaşılan kısımlarından biri, kaza ile aşırı derecede karmaşık olan şeylerdir. Gelişimdeki sihirli şeylerden sadece biri, öyle görünüyor. Hiçbir şey görmeden ya da olayı olmadan kelimenin tam anlamıyla herşeyi yapabilirsin . Sadece ne oluyor, ve çoğu kez geliştiriciler bunu gerçekleştirdiklerini bile fark etmiyorlar. Pekala, şanslısınız, Ruby'nin gerçekten bir şeyleri karmaşıklaştırmamıza yardımcı olan 'konfigürasyon üzerinde bir sözleşme' eylemi var.
Örneğin, ActiveRecord'dan devraldığı bir “Kitaplık” sınıfınız varsa, otomatik olarak veritabanında Kitaplık adlı bir tablo arar. Bu şeyleri tekrar tekrar yazmamıza yardımcı olan küçük şeyler. Aslında, DRY'nin özünü fazlasıyla örneklendirir (Kendinizi Tekrar Etmeyin). Bu inanılmaz ve çok yararlı. Neden biraz zaman kazanmıyoruz, sonuçta kahve için daha fazla zaman.
Bu konuda sevdiğim bir başka şey de, dilin yaratıcısının kod sadeliği ve güzelliği ile kesinlikle takıntılı olmasıdır. Yani eğer daha basit bir şey yapabilseydi ve daha güzel bir şekilde yaparsa, o zaman bunu uygulayacak, birçok geliştiricinin işine yarayacaktır. Ama ben şahsen bunu seviyorum.
Bir motor olarak raylar aynı zamanda çerçeveler hakkında genel olarak ayak parmaklarınız üzerinde bir adım atmadan öğrenmenize yardımcı olacaktır ve bence bunu mükemmel bir şekilde dengeleyecektir.
Tabii ki, insanlar PHP çerçevelerinin bunu daha iyi bir şekilde yaptıklarını söyleyecektir, çünkü hala kafanızı PHP'yi kullanarak bir çepeçe çevirebilirsin. Ama aslında Rails'in bunu PHP'den çok daha zarif bir şekilde yaptığını düşünüyorum ve muhtemelen her zaman olacaktır.
Görüntü ray Shutterstock üzerinden.
Gördüğünüz gibi, Raylar'da gerçek veya küçük bir Ray uygulaması yapmak için hala çok şey öğrenmeniz gerekiyor. Her şey için iskele kullanabileceğin gibi değil. Aslında, bunu aktif olarak yapamazsınız, ancak ilk başta olacaksınız ve Görünümler, Templating ve Ruby'nin HTML ile nasıl etkileştiği gibi şeyleri öğrenmenize yardımcı olacak.
Örneğin, sevdiğim bir şey, bir veri özniteliğinde önceden ayarlanmış bir türdeki sunucu verilerini depolayan bir Ruby değişkenini koymaktır. Örneğin: -data-attribute-for-ruby = ”<% = Time.now%>” ve daha sonra JavaScript'te bu veri niteliği ile çalışın veya etkileşime geçin.
Raylar oldukça hızlı oldukça karmaşık olabilir ve Rails'in güzelliği sizi diğer dilleri de keşfetmeye zorluyor. JavaScript'te gerçekten iyi ve CSS'de çok iyi olmanızı sağlayacaktır. Ayrıca SQL'in nasıl daha iyi anlaşılacağını ve veritabanlarının nasıl işlediğini tümüyle açıklayacaktır.
Basitlik bariyeri o kadar düşük bir giriş yapar ki, veritabanı şemasına baksa bile mantıklıdır, Oh, o sınıfı orada yaptım. Değil, Oh ateş bekle, ben sınıf şey yaptım şimdi veritabanı işi yapmak zorundayım bunu nasıl yaparım. Veritabanlarını bilmiyorum. Ugh. Bunu vidala. Rails'de bunların hiçbiri.
Ayağını atmadan öğrenirsin. Ve inanılmaz güzel bir şey.
Ruby'yi öğrenmenin size genel olarak daha mutlu bir programcı yapabildiğini düşünüyorum.
Burada sadece kişisel deneyimlerden konuşabiliyorum, ama hayatı gelişime dürüstçe yeniden canlandırdı. 8 yıldan beri PHP'li bir adamdım ve gerçekten “sevmediğim” bir şeydi ama yine de yaptım. Ruby'yi bulduktan sonra, tam anlamıyla ellerimi kırdım ve asla PHP'ye dönmedim. Hayatımda, daha önce sadece PHP'yi bilen bir öğrenciyken Rails çekirdeğinin yanı sıra bazı büyük açık kaynak projelerine ve projelere imza attığım, danışmanlık yaptım ve danışmanlık yaptım.
Tabii ki PHP'de bu şeyleri yapabildim ve yapabildim ama asıl önemli olan bu tutkuyu hiç yapmadım ve tutku çok önemli. Yaptığın şey için bir tutkunuz yoksa, bunu yapmayı bırakmalısın. Şimdi. Ve sonra Ruby on Rails'i öğrenmelisin. Geri getirebilir.
Ruby on Rails'e henüz daldın mı? Sence orada daha iyi bir geliştirme platformu var mı? Yorumlarda bize bildirin.