Geliştiricinin tarafına hitap edecek en iyi Linux lezzetini arıyorum. Açık kaynaklı bir aşığım ve birkaç farklı dil kullanıyorum.
Geliştiricilere yönelik bir Linux gibi bir şey var mı?
Geliştiricinin tarafına hitap edecek en iyi Linux lezzetini arıyorum. Açık kaynaklı bir aşığım ve birkaç farklı dil kullanıyorum.
Geliştiricilere yönelik bir Linux gibi bir şey var mı?
Yanıtlar:
Uygulamada dağıtımların hepsi aynı geliştirme aracı zincirini kullanıyor, bu nedenle genel geliştirme çalışmaları için bir platform olarak gerçekten önemli ölçüde farklı değiller. Bununla birlikte, bazıları, bazı geliştirme çalışmaları ile ilgili olabilecek özel avantajlara sahiptir :
Ticari dağıtımlar (RHEL, SLES), üçüncü taraf kapalı kaynaklı satıcılardan en iyi desteğe sahiptir. Oracle ile çalışmak istiyorsanız (örneğin), bunlardan biriyle daha iyi olabilirsiniz, ancak doğru kitaplıkları yüklerseniz Oracle çoğu dağıtımla çalışabilir. CentOS, RHEL kaynaklarından derlenmiştir ve RHEL için üretilmiş tüm ticari yazılımlar olmasa da en iyi şekilde çalışacaktır.
Tamir etmek istiyorsanız, Linux From Scratch'ı deneyebilirsiniz. Linux dağıtımının nasıl birleştiği konusunda oldukça iyi bir eğitim.
Açık kaynak olan ya da açık kaynak kodlu her şeyin havuzlardan alınabileceği bir şey istiyorsanız, o zaman Debian merkezli bir dağıtım (Debian veya Ubuntu) kazanmak olabilir. Canonical’in Ubuntu paket yönetim sistemi olarak kullanması için seçilmesinin bir nedeni var.
Her şeyi n'inci dereceye ayarlamak istiyorsanız, Gentoo tüm işlemcinizi özel işlemci mimariniz için yeniden oluşturmanıza izin verir.
Eğer 'geleneksel bir unix' deneyimi istiyorsanız, Slackware veya FreeBSD'yi deneyebilirsiniz (ki bu bir Linux dağıtımı değil, OP'nin ilgisini çekebilir). Ayrıca, BSD ailesi özellikle ağ oluşturma konusunda güçlü olduğundan, bu alanda çalışan geliştiricilere Linux üzerinden avantajlar sunabilir.
Bunlardan, CentOS, Debian, Fedora, Ubuntu, Slackware ve FreeBSD'yi geçmişte çeşitli zamanlarda kullandım, ayrıca birkaç tane daha kullandım (Vector, SLS, Yggdrasil ve Redhat'ın yaklaşık 4.0 sürümünden çeşitli sürümleri). Bir 'unix' geliştirme ortamı olarak hepsi dönemin araçlarını sundu ve birlikte gelen takımlarla geliştirme çalışması için ya da ihtiyaç duyduğunuz her şeyi indirerek ve inşa ederek kullanılabilirdi.
Unix, bir zamanlar bir işletim sistemi olarak maskelenen bir IDE veya bu etkiye yönelik kelimeler olarak tanımlanmıştır. İsterseniz, herhangi bir unix veya linux çeşidi size unix geliştirici deneyimini verebilir. Bir noktada çevreye pek fazla değer vermedim. Gerçekten sadece xterm pencereleri açmak ve birkaç uygulamayı başlatmak için pencere yöneticisini kullandım; her şey komut satırından hemen hemen yapıldı. Çoğu unix veya linux çeşidi bunu yapabilir.
C'ye girerseniz cim ile cim veya emacs yaparsanız, make and gcc gayet iyi çalışıyor; Ön uçlu ya da uçsuz gdb'yi kullanabilirsiniz. Bu alet zinciri ayrıca perl veya python gibi diller için iyi destek sağlar ve üçüncü parti araçlardan gelen zengin bir destek ekosistemiyle birlikte gelir.
Daha fazla GUI merkezli bir iş akışı için, kişisel bir pencere yöneticisi, masaüstü ortamı ve geliştirme araçları seçeneği geliyor. Eğer Java kullanıyorsanız, Eclipse ve netbeans birçok büyük dağıtım üzerine inşa edilmiştir. C / C ++, perl, python ve diğer betik dilleri için çeşitli geleneksel IDE'ler mevcuttur. Tüm Linux dağıtımları olmasa da bunlar çoğu üzerinde çalışılabilir. Java, BSD'de yalnızca 3. taraf bağlantı noktaları üzerinden desteklenir, bu nedenle eğer bununla çalışıyorsanız, linux konusunda muhtemelen daha iyi olursunuz.
Geliştiricilere yönelik bir Linux gibi bir şey var mı?
Evet. Buna Linux denir.
Fedora (veya herhangi bir Red Hat türevi) herhangi bir Debian, Slackware, Gentoo veya her neyse iyidir. Cidden, herhangi bir büyük dağıtımla geliştirebilirsiniz, "geliştirici odaklı" bir Linux istemek aptalca bir soru.
Bu dağıtımların herhangi birinin geliştiriciler için diğerlerinden daha iyi olduğunu söylemek aptalca. Sadece ciddi değil.
Bu soru gerçekten tartışmalar için yalvarır.
Epeyce dağıtımı denedim, çünkü gerçekten yapmaktan zevk alıyorum.
Ben bir geliştiriciyim ve ayrıca geliştiriciler için iyi bir Linux'u merak ettim ve deneyimlerime göre geliştiriciler için özel olarak tasarlanmış herhangi bir Linux dağıtımı yok.
Bunun nedeni, bir geliştirici olarak, yalnızca gereksinimlerinize göre herhangi bir dağıtımı kişiselleştirebilmenizin yanı sıra, bu tür bir özelleştirmeyi nasıl yapacağınızı kesinlikle bilmeniz gerekir.
Yani temelde Linux ile aşina değilseniz:
1) Debian, çünkü birçok web sunucusu Debian kullanıyor, bu yüzden Debian makinelerinin nasıl organize edildiğini bilmek iyi bir fikir. Debian ile ilgili iyi bir şey, kesinlikle en yaygın kullanılan Linux (Ubuntu gibi türevleri dahil) olduğu için mevcut desteğin, topluluğun ve önceden derlenmiş paketlerin sayısının son derece kapsamlı olmasıdır. Debian'ın kötü yanı, istikrarlı bir üretim ortamı olma yolunda olması ve geliştirici olarak denemek isteyebileceğiniz en son kanama özelliklerini nadiren sunması.
2) Arch-Linux (aslında ArchBang) 3 nedenden dolayı şu anki favorim: - Tek tıkla kolay kurulum ve ayarlamalar yapmanın pek bir yolunu sunmuyor, ancak sizin gibi her şeyi ayarlamanıza yardımcı olacak harika bir öğreticiye sahip İsterseniz, bu yaklaşım arka planda işlerin nasıl yürüdüğü hakkında çok şey öğrenmenize izin verir ve zamanla her şeyi doğru bir şekilde ayarladıysanız, Linux / Unix sistemi kullanarak kendinizi oldukça rahat hissedeceksiniz demektir. - Yeni sürümü indirmek ve her şeyi tekrar yüklemek zorunda kalmayacağınız anlamına gelir, sadece sistemi ve Voila! 'Yı güncelleyin. - En son kanama kenarındaki tüm şeyleri uygulamaya çalışır, böylece her zaman yazılımdaki yeni gelişmelerden ve gerçekten kayda değer bir geliştirici olarak karşınıza çıkacaktır. -Oh ve onun da harika bir topluluğu var.
Ama yine de, temel olarak birkaç şeyi denemek ve sizin için en iyi olanın ne olduğuna karar vermek size kalmıştır, garanti edebileceğim şey, Linux'a bağladığınızın ne olursa olsun, işleri istediğiniz gibi yapılandırmanın / özelleştirmenin her zaman bir yolu olduğudur. önemli olan şey, bu özelleştirmeyi nasıl yapacağınızı öğrenmektir ve daha sonra nihayetinde yapmak istediğinize mümkün olduğunca önceden yapılandırılmış bir şey seçersiniz.
Linux dağıtımlarında gittikçe daha farklı lezzetler var; örneğin, çocuklar için hazırlanmış Qimo veya DoudouLinux gibi dağıtımlar var.
Tabii ki, gereksinimlerinize uyacak şekilde değiştirebilirsiniz (Linux hakkında konuşuyoruz, doğru:]) ama yine de çok fazla zaman harcayacaksınız.
Bazıları yeni şeyler öğrenmenin harika bir yol olduğunu iddia edecek. Bununla birlikte, dağıtıma katılmak ve işleri ayarlamak için biraz zaman ayırmanız gerekecek, herhangi bir dağıtım ile kaçınılmaz.
Ancak en önemli şey paketler.
Bazıları size taze olanları (örneğin: Arch) ve bazılarını çok kararlı olanları (örneğin: Debian) getirir.
Belgelendirme, donanım desteğine (sürücüler, sürücüler, sürücüler!) Gelince de değişir.
Bu 3 noktayı (paketler, belgeler, sürücüler) ve kendi becerilerinizi göz önünde bulundurarak, bazı ana dağıtımları keşfetmek için biraz zaman ayırmalısınız.
İyi bir başlangıç burada olabilir: http://distrowatch.com/
Fedora , diğer birçok dağıtımda bulunmadan aylar önce onlarla deneme yapmanıza ve geliştirmenize olanak tanıyan yeni teknolojilerin ilk uygulayıcısıdır. Kutudaki birçok programlama dilini ve kitaplığını destekler ve eksik olabilecek herhangi bir şeyi sisteminize eklemenizi nispeten kolaylaştırır. Üçüncü tarafların buna aykırı özellikler için paketler sağlamalarına izin vermeyi seçerek, açık kaynaklı bir felsefeye sahiptir. Sadece "Fedora Core" deme (Çekirdek ve Ekstralar Fedora 7 için birleştikten sonra "Çekirdek" yi kaybetti).
Sanırım, kendi tecrübelerime ve buradaki cevaplara dayanarak, daha kolay ve pratik hale getirecek bir takım uygulamalar ve araçlar aradığınızı düşünüyorum.
Linux ile ilgili en güzel şey, herhangi bir dağıtımın özelleştirmenin çok kolay olmasıdır. Geliştirme sırasında en sık kullandığınız yazılımların bir listesini bulmanızı ve bilgisayardan bilgisayara getirebileceğiniz büyük bir tarball yapmayı tavsiye ederim (çalışma alanlarını çok değiştirirseniz).
Java / Eclipse gelişimi için, Ubuntu / Linux Mint üzerinden Debian'ı (ve muhtemelen 64bit'in üzerinde 32bit) düşünün.
Arka plan: Bazı Java / Eclipse RCP * geliştirmeleri yapıyorum ve Ubuntu ve daha sonra Linux Nint kullanıyorum, ancak masaüstü ortamındaki dengesizliklerle (Linux Nane Tarçın) veya her türlü rahatsız edici hataya maruz kaldım. Sun Java6 JDK'yı kurmak için biraz karmaşık bir prosedür (projemiz tarafından kullanılıyor ... Ubuntu / Linux Mint yalnızca depolarında OpenJDK ile birlikte gönderilir).
Geçenlerde Debian 6 Squeeze'i sanal bir makinede çalıştırdım ve bunların nasıl daha iyi çalıştığını anladım. Sun Java'yı yüklemek, yalnızca /etc/apt/sources.list içindeki ana depo dizgisinden sonra "ücretsiz olmayan" anahtar kelimenin eklenmesini ve daha sonra apt-get aracılığıyla yüklenmesini ve bununla birlikte gelen (Gnome2) masaüstünün de çok daha kararlı olmasını gerektirir Ubuntu / LinuxMint'teki Gnome3 / Unity / Tarçın alternatiflerinden daha.
[*] Eclipse RCP, Eclipse'i yalnızca bir GUI olarak değil, aynı zamanda kendi GUI'nizi oluşturmak için bir kütüphane olarak da kullandığınız anlamına gelir.
Ubuntu cidden harika.
Güncel ve kurulumu kolay tüm paketlere sahiptirler. Varsayılan konfigürasyonu kullanın (= Gnome) ve zamanlamanızın çoğunu programlama yaparak harcayacaksınız.
Gcc compiler suite, make, autoconf vb. Kurulumu, iyi bir internet bağlantısı ile 5 dakika sürmektedir. Otuz dakika daha ve Ruby, Python, Sun JVM ve Eclipse çalışmaya hazır.
Düzenleme: Ubuntu, birçok kütüphane için hata ayıklama sembolleri bulunan ekstra paketler sunar. C / C ++ geliştiricileri için olması güzel.
Cevabı, geliştirme için iyi bir Linux olmadığı, bir tane daha yaratmadığınız ve bu alanda gentoo kadar desteklemediğiniz linux olmadığı için. Her şeyi kaynağından derlersiniz (geliştirici olmak için kırılgan olmanız gereken bir şey. Yükleme işlemi, sistem hakkında size uygulamalar yaratırken sahip olacağınız birçok soruyu yanıtlayan herhangi bir dağıtıma göre daha fazla şey öğretir.
En iyi bölüm, ne tür programlar geliştirmek istediğinizi seçmenizdir. Eğer java istiyorsanız javac veya gcj veya her ikisini de kurun. Topluluk desteği başka hiçbir şeye benzemez, bu nedenle sorularınız varsa cevaplandırılacaklar veya cevabı bulmak için gitmeniz gereken yere ulaşacaksınız.
Aklınıza gelebilecek her IDE gentoo içine "ortaya çıkma" / yükleme için kullanılabilir. Kurulumu inanılmaz derecede kolay veya anlaşılması kolay olmasa da nether programlama ve gentoo kopyasını kuramazsanız, programlarınızı makinemde çalıştırmak istemem. İnsanların yüklemesinde yaşadıkları zorlukların çoğu, temel Linux bilgisi eksikliğinden kaynaklanmaktadır. Söz veriyorum, her şeyi istediğin gibi ayarladıktan sonra hoşuna gidecektir.
Yüklendikten sonra, bir katranı yedekleyebilir ve bir çekirdeği yeniden yapılandırmak veya işler elinden çıkınca geri yüklemek için vaktiniz olan herhangi bir bilgisayara koyabilirsiniz.