Tja, nem is kevesen mondják ezt. Paul Graham, Joel, stb.
Viszont én itt megjegyezném csöndesen (tényleg nagyon halkan), hogy a nagyon-nagy cégek és a nagy cégek kilencvenakárhány százaléka alkalmazza ezt a 99%-ot, míg a kicsi cégek, illetve a figyelemreméltó nagy cégek (Google, Microsoft néhány részlege) kapják a maradék 1%-ot, akik nem szarnak be egy CString*&-tól, illetve egy int 0x80-tól. :)
Persze, nem is szivesen válalkoznék rá. Nem is állítottam h. könyû lenne. De egy ~ezer soros, asm kódot még elég jól átlátok. (Nem vagyok asm mániás) GUI mindig szopás, pepecselõs szar.. Egy fajta Mörfi törvény: Neked mindig az kéne a gui-ba, amit az adott gui eszköztárral maceráns megcsinálni. (Játszottam már pár félével)
Nem kötekedésképp írom, de lehet java virtual machinera is assembyben programkódot írni. Igaz nem túl gyakori, de megvan rá a lehetõség. És a jvm-en futó kód természetesen nagyszerûen "portolható" rengeteg software és hardware platformra. Igaz ez nem is portolás a szó szoros értelmében, egyszerûen mûködik mindenhol csak megfelelõ jvm-et kell biztosítani.
~Végén, de több mint 11 éve programozgatok. Ált. asm-ben is gyorsabban megirok rövidebb progit (pl. megoldás keresõ algoritmusokat), mint a csoport társaim többsége Jávában. (Nem vagyok asm mániás, a többség gyenge, u.a. volt a feladat terem elhagyása, megoldás bemutása alapján gondolom ezt..) BlackRose-nek igaza van sajnos, nagyon sok rosz programozó van. És tudom, hogy fõkép magyarországon is Java (/.Net) -es fejlesztésre keresnek embert. (Olvasok állás hírdetéseket..) De én csak félig vok. informatikus és féleg fizikus. És micro vezérlõk érdekelnek mostanság..
Ne keverjünk dolgokat. Az algoritmikus programozás nekem elég szépen megy, ezt elhiheted. A gyakorlati feladatokkal más a helyzet. Nem vagyok és nem is leszek programozó, se rendszergazda, csak magamnak írogatok progikat. Ha szükségem lenne rá, nagyon gyorsan meg tudnám tanulni, de nincs, mert nem ezt az utat választottam.
"egyrészt a Microsoft belsõ fejlõdését, véleményének (félelmének) megszilárdulását, miszerint a Linux belátható idõn belül nem tûnik el," ezt csak a sales-ek állitották megtévesztésbõl. Pontosnan tudták, hogy mi a téma.
Szombi: a deklarativ programozás nem életképes az IT piacon, ezért nem terjed. Nincs rá hardware, nincs rá képzett mérnök, és nem elég buzzword a kereskedõknek.
BlackRose: hehe, megint egy 10 pontos hozzászólás. Csak annyit tudok hozzátenni, hogy zsenikkel a hülye is le tudná szállítani a terméket. Az a mûvészet, hogy ennyi hozzá nem értõ ember is képes összerakni valamit, ami mégis mûködik, és olyan ember adja el, akinek fogalma sincs arról, hogy mi ez, de a profit mégis megvan.
turul16: gondolom, te még a felsõoktatás elején-maxközepén vagy.
Caro: "Én C-ben is egy képet egyetlen utasítással tudok betölteni" gratulálok, javaslom a pythont/html-t, mint életpályát. Esetleg egész tûrhetõ rendszergazda lennél. Majd csináltass egy "#bash powaaa!!" feliratú pólót. Nem az a baj a hozzászólásoddal, hogy tapasztalatlan ember véleménye, olyannal tele van a fórum. Az a baj vele, hogy bõdületesen fogalmad nincs a programozásról, viszont a szád nagy. Ezért leszel te rendszergazda. :)))
Nálunk van olyan tárgy, hogy Deklaratív Programozás. Tény, hogy egyszerûen le lehet írni szinte minden relációt, amelyek megvalósítása C-ben, de még Java-ban és asm-ben is nehézkes lenne. Ezek az ún. imperatív(felszólító) programozási formák, míg a deklaratív(kijelentõ) programozásnál más szabályok élnek. Bizonyos célapparátusokhoz nagyon jól jön, egyedül a bonyolultabb adatszerkezetek kezelése a változók hiánya, na meg az emberi gondolkodás mássága okozhat olyan gondokat, melyek miatt az elterjedés korlátokba ütközik.
"Ebben 90% ban erõsen kételkedek, OO szerûen szervezni a kódot C-ben is lehet, az a kurva macro processor és jo tervezés rengeteg lehetõséget ad... (egy jóféle programozó sebességét nem tizedeli a C a C# ill. Java val szemben(, de valamivel lasabban kódolnak azért C-ben) C++ -al akkár hozhatják java sebbeséget ,de az feladatol is függ)"
igen de van egy valami amit úgy hívnak, hogy REAL WORLD, ami általában abból áll, hogy a programozók 50% teljesen alkalmazhatatlan (igen a Bell Curve itt mûködik), a maradék 50%-nak nagy része szintén gyengén alkalmazható, vagyis az igaz, hogy egy igazi programozó mûvész a C-ben isteni dolgokat mûvelhet, csak az a baj, hogy túl kevés ilyen van, ha ehhez adjuk még a szervezési gondokat (a menedzment is a Bell Curve alapján nagyjából alkalmazhatatlan) és a jó programozó sokszor nincs jó helyen alkalmazva, egy REAL WORLD-ban találjuk magunkat, ahol a 90% amit mondtam olyan igaz, hogy szinte nehéz elhinni. Tehát nem is annyira a lasabb kódólás lenne a gond, hanem nincs elég minõséges kóder. A Java és .NET esetében gyengébb kóderek is kihoznak mûködõ szoftvert, persze a szoftver attól még mindég gyenge, de mûködõ, C-ben gyenge kóderek el sem tudják kezdeni, mert mire egy valamire való kódhalmaz összejönn annyira bug-os, hogy a javitása 2x annyi idõt vesz igénybe mint amennyi összesen a rendelkezésre áll és ilyen esetben az történik mint a szoftverprojektek 70%-ával (még Java és .NET esetén is van ilyen), egyszerûen megnyomják a CANCEL gombot a cégnél...
A fizetõs Linux cél platformos szoftverek valószínüleg robbanás szerûen fognak meg jelenni, de a robanás nem tudom mikor lesz mihez szinkronizálva. Szép lassacskán most is jellenek meg .. (pl. Quake4)
Java technolgiának (interpretált byte code) nem josolok nagy jovõt (Bár a SUN agreszívan védelmezi). Ellenben a .Net (C#) IL (intermediate language) dolog elég jó hatékonyság/fejlesztési idõ/hordozhatóság komprumiszum. (csak ne MS only függvényeket hivjanak a kódban) (a ruby dolog is érdekesnek igérkezik, de még nem volt idõm foglalkozni vele) "hogy 90% most mûködõ alkalmazás soha meg sem született volna ha C-ben gondolkodnánk" Ebben 90% ban erõsen kételkedek, OO szerûen szervezni a kódot C-ben is lehet, az a kurva macro processor és jo tervezés rengeteg lehetõséget ad... (egy jóféle programozó sebességét nem tizedeli a C a C# ill. Java val szemben(, de valamivel lasabban kódolnak azért C-ben) C++ -al akkár hozhatják java sebbeséget ,de az feladatol is függ) Egyéb dekleratív nyelvek segítségével, lehet érdekes dolgokat létre hozni, amit C-ben maceráns lenne..
Tényleg azt pletykálják van funkcionális (pl. (c)LISP) nyelven megírt progibol hatékony nativ kódot generáló cucc, nem tudja valaki véletlenül hol találom ...
Ha meg valaki nagyon sebbesség mániás az probáljon meg ASM-ben programozni és szépen kioptimalizálni, ~végtelen idõ igényes, ill. ASM kódban bugot keresni nem egy leány álom.
Ezeknek gc- nyelveknek az nagy elõnye, hogy gyengébb programozó nem felejheti ki free()-t, illetve, ha ultra szarul kezelné a memóriát egyébként, a gc-s rendszer még gyorsít is a dolgon...
Na röviden a Java és .NET nem a képmegjelenítés egyszerûsége miatt született, hanem a CORBA és még jobban a DCOM/COM+ bonyolultsága miatt, az üzleti alkalmazások ahol a skálázhatóság, az interoperibilitás és a distribuited environment a fontos. Különben az open source megmarad, lehet, de mivel maga a szoftver nem a gépen, hanem a neten fog élni, annyira megváltozik, hogy a mai formája valószínûleg elveszik, ugyanez érvényes a zárt forráskódra is. Nem szabad összekeverni a kereskedelmit szoftvert az open source-valm attól, hogy valami open még lehet kereskedelmi (pl. RedHat Enterprise Linux) és ugyanígy ami zárt forrású még men biztos, hogy kereskedelmi is (pl. Internet Explorer - habár itt valószínûleg valaki kétségbe vonja, na mégis ingyenessen letölthetõ). A Web 2.0 különben nem vicc, de ami igazán robban az majd a Web 3.0 lesz.
A C nem type-safe, a C#, Java igen. Ez az egyik fo oka annak, hogy ezen utobbi nyelvekben sokkal hatekonyabban lehet fejleszteni.
Nem tudok egyetérteni. Megfelelõ crossplatform libekkel, amik jócskán vannak, nagyon leegyszerûsíthetõek a dolgok. Én C-ben is egy képet egyetlen utasítással tudok betölteni, aminek egyetlen argumentuma van. Ez nem hinném, hogy bonyolultnak nevezhetõ. A másik: az opensource biztosan fenn fog maradni. Hogy az üzleti szoftverek milyen irányba fognak menni, arról fogalmam sincs.
A Java és .NET nem azért született, mert C-ben nem lehet platformfüggetlen kódot írni, persze ez sem elenyészõ, mert C-ben igazán lehet, de sokkal nehezebb mint Java-ban vagy .NET-en. A Java és .NET azért jött létre, mert az üzleti alkalmazások igényeltek egy vagy több olyan megoldást amelyel a meglévõ fejlesztõállomány elfogadható idõn belül elfogadható minõségû kódot tud kihozni. C-ben 100x több tudás kell és akkor is 10x több idõ, hogy ugyanazt kihozd mint Java vagy .NET környezetben, persze senki sem vitatja, hogy C-ben esetleg jobb lenne a hardware kihasználása, de annyi biztos, hogy 90% most mûködõ alkalmazás soha meg sem született volna ha C-ben gondolkodnánk, a VB is annak idején ezért lett populáris, nem azért mert jobb kódot lehet vele írni mint C-ben hanem azért mert részben megoldást jelentett a növekvõ igények és a korlátozott idõ és fejlesztõi bázis közötti szakadékra. A jövõ egyébként a Java, .NET és a hasonló rendszereké, persze nem minden alkalmazásterületen, de a natív kódolás annyira kiszorul idõvel mint amennyire mára kiszorult az assembly. Különben a cikkel kapcsolatban nem értek egyet a Gartner jóslattal. Szerintem a szoftveripar teljessen átfog szervezõdni a szolgáltatások irányában és minden olyan jóslat amely a meglévõ módszerek egyikét teszi elõnybe, hibás, egy harmadik és negyedik fog kialakulni amely ma még nem is létezik. Azt persze ne kérdezzétek, hogy melyik, mert aki ezt ma tudja az hamarossan nagyon gazdag ember lesz.
"Amúgy meg most is lehet használni "free" licencelésû programokat m$ platformon..."
Nem arról szólt a cikk, hogy lehet-e, hanem hogy el is fognak terjedni, tehát a felhasználók használni is fogják. Azt hiszem egyelõre nem nevezhetõk nagyon elterjedtnek a free programok amikor statisztikák szerint MS Office-t az emberek kb. 95%-a használ. Persze ez kb. egy éves statisztika, de azóta valószínûleg ez nem sokat változott.
De akkor is durva, hogy pl. openoffice-t kevesebb mint 5% használ...
>a Windowson az ingyenes fejlesztések, a Linuxon a kereskedelmi projektek hódítanak majd
Legjobb esetben is hibádzik egy "is" a mondatból... Amúgy meg most is lehet használni "free" licencelésû programokat m$ platformon, inkább a teljesen "free" OS-eken kérdés a kereskedelmi szoftverek elterjedése desktop szinten.
Az OSX pedig egyértelmûen egy zsákutcája az operációs rendszereknek, mi? Egy undorító kezelhetetlen felületû gagyi? Háááátttttt, érdekes ez...
"aminek eredményeként már nem az egyes operációs rendszerekre készülnek a szoftverek, hanem az olyan platformokra, mint a Java és a .Net." Itt a probléma. Programozó barátaink igencsak elfelejtették már, amit tanultak. C-ben is simán elõállítható platformfüggetlen kód, és nem kell erõmû hozzá ellentétben ezzel a két "csodás" nyelvvel.