Koji programski jezik je potrebno naučiti? Koji bi programski jezik trebao naučiti početnik? Koji je programski jezik bolji? Java virtualni stroj

💖 Sviđa li vam se? Podijelite vezu sa svojim prijateljima

Mnoge programere početnike muči pitanje:

Koji programski jezik trebam naučiti?

I žure od kuta do kuta, slušajući preporuke "cool stručnjaka". Počnimo učiti Pascal. Onda će im netko reći da je Pascal sranje, ali C++ je cool. Odustaju od Pascala i preuzimaju C++. Onda će im netko drugi reći da je najcool Assembler. Svi. C++ je zaboravljen, a oni se kreću prema novim visinama - prema mudrosti Assemblera.

Obrazovni programski jezici

Dakle, odlučili ste promijeniti karijeru i krenuti u tehnologiju. Sad se vjerojatno pitate koji biste programski jezik trebali prvo naučiti! Mnogi jezici su objektno orijentirani, ali još uvijek imaju primitivni tip podataka. Imat će uglavnom sve kao objekt, ali još uvijek s iznimkama za cijele brojeve ili možda znakove ili nešto treće.

Slijedeći načelo najmanjeg iznenađenja, Matz govori o tome kako bi jezici trebali biti dizajnirani za ljude jer su ljudi gospodari, a računala robovi, a ne obrnuto. Ovo je važna točka jer je dao sve od sebe kako bi dizajnirao jezik koji je bio vrlo prijateljski nastrojen prema ljudima, umjesto da bude prijateljski nastrojen za razumijevanje. Materijal zvuči kao engleski ili običan jezik, a ne tehnički ili kodiranje. To ga čini vrlo ugodnim za početnike i stručnjake. Visoka razina znači da se izvlači iz hardver Računalo. Možete govoriti izrazima koji su više ljudski, a manje računalno generirani.

  • Usredotočite se na ljude, na to kako je ljudima stalo do programiranja.
  • Način na koji to radite ne bi trebao biti iznenađujući.
  • Visok nivo, ugodan, zajednički jezik.
  • Ima mnogo primjena.
  • Vrlo popularan među startupima.
Ben, jesi li prvi prepoznao Ruby?

Pritom zaboravljaju ono glavno:

Ne postoje loši programski jezici - postoje samo loši programeri!

JAKO VAŽNO!
Istražiti programiranje, ali ne programski jezik!

Jer ako ste početnik, onda nemate pojma gdje ćete raditi i koje programe pisati. Vrlo je moguće da vaš budući poslodavac koristi Delphi, a možda i Visual C++ ili FoxPro. Ili ćete općenito morati razviti programe za kontrolere ili CNC strojeve.

Ako pokušate dobiti ovaj sporazum i krenete svojim putem, bit će mnogo teže. Kao što možete zamisliti, u svijetu startupa, gdje se startupi neprestano okreću novim idejama i moraju brzo isporučiti značajke, ovo je odmah postalo popularno. To omogućuje startupima da brzo ponavljaju i mijenjaju svoje proizvode. Brza izrada prototipova i popularna među startupima koji žele brzo ponavljati. Jako tvrdoglav, favorizira dogovor o konfiguraciji. . Filozofski, svi misle da je to važno.

Ako imate priliku ići, svakako biste trebali ići. Dio toga je to što raste iz tako male baze. Vidjet ćete da je navedeno kao sva tri. Još važnije, kroz Block imate mentora koji radi s vama. Možete kupiti primjerak ili ga možete besplatno čitati na internetu. . Lijepa stvar kod mentorskog tečaja je to što se doista može postaviti za bilo koju razinu iskustva. Ako dođete na potpuno novo mjesto, mentor može kalibrirati tečaj za to.

Zapamtite da je iskusnom programeru potrebno samo nekoliko dana da nauči osnove novog programskog jezika. To jest, prebacivanje s Delphija na Visual C++ ili obrnuto nije tako teško (i ne tako dugo). Ali za ovo vam je potrebno moći programirati!

Ako perfektno poznajete programski jezik, ali ne znate programirati, kakva vam je to korist? To je isto kao da znate zakucavati čavle, ali ne možete to učiniti. Zašto vam je potrebno ovo znanje ako se na kraju ipak obratite profesionalcu?

Ako dođete s dvije do tri godine iskustva u pisanju na drugom jeziku i pokušavate to prenijeti, vaš će mentor ponovno kalibrirati prema toj pozadini. Ovo je samo nekoliko primjera. Ako ste freelancer, možete ga koristiti za pronalaženje prijatelja. Ovo su samo primjeri onoga što su učenici gradili u bloku. Koji je najzgodniji projekt koji ste vidjeli tijekom studija?

Student je napravio ovu aplikaciju za chat uživo u kojoj možete nastaviti razgovarati i komunicirati s drugim ljudima. Bez obzira na jezik koji učenik odabere, mentori Blocka koje ste vidjeli bili su najuspješniji ljudi koje ste imali. Jesu li svi dijelili nešto što im je pomoglo da sruše tečaj?

Upravo zato opet kažem svoju omiljenu rečenicu: nema loših programskih jezika, postoje samo loši programeri.

Dakle, možete početi učiti programiranje s bilo kojeg jezika - nije važno. Glavna stvar u programiranju nije jezik. Glavna stvar je poznavanje algoritama, sposobnost kreativnog razmišljanja, sposobnost pretraživanja potrebne informacije i tako dalje. I, naravno, iskustvo.

Najvažnije je doći do prave motivacije. Dođite sa strašću za učenjem, steknite vještinu da promijenite svoju karijeru. Kodiranje je teško, pogotovo kada tek počnete, frustrirajuće je. Potrebna vam je sveobuhvatna svrha ili strast koja će vas održati. Neki su imali projekt koji su namjeravali napraviti ili startup ideju koju su htjeli pokrenuti. Jedan student bio je vođen činjenicom da želi poučavati svoju djecu i biti uključen u njihovo učenje i kodiranje.

Java virtualni stroj

Bez obzira što trebate, samo trebate pogurati nešto naprijed i dati vam tu strast. Knjižnica je samo samostalni dio koda. Uzima sav kod koji vam je potreban i dodaje ga vašoj aplikaciji. Što možemo učiniti kako bismo bili sigurni da stvarno razumijemo jezik kada ga učimo. Možete napisati nekoliko redaka koda i dobit ćete puno toga ispod haube. Dobivate puno toga što vam je jednostavno dano, što ne morate ručno instalirati i raditi. To je dobro jer je manje posla za programera i možete brže stvarati impresivnije stvari.

Zato ne obraćajte pažnju na ničije preferencije. Ako netko voli C++ ili C#, onda je to njegovo pravo. Međutim, to ne znači da je C++ programer bolji od Visual Basic programera. To samo znači da postoje različiti programski jezici. Baš takav kakav jest različiti putevi jelo: Azijci jedu štapićima, Europljani jedu vilicama i žlicama. Što je gore, što je bolje? Da, ni jedno ni drugo. Samo što su jedni navikli na štapiće, a drugi na žlice i vilice.

Može biti loše ako ne razumijete što se događa i jednostavno to učinite. Ovo je zanimljiva pritužba jer se gotovo čini da je prejak ili predobar. Dan je zajednici i svi imaju jednako mišljenje o smjeru u kojem bi jezik trebao ići i kako bi se trebao razvijati. Kao priznanje za sve što je učinio, Guido je izabran za diktatora Pythonovog života.

Eksplicitno je bolje od implicitnog Jednostavno je bolje od složenog Složeno je bolje od složenog. . Ovo je hijerarhija pitanja za razvoj jezika. Razmak zapravo ima smisla, što zapravo nije slučaj za većinu drugih jezika. Ako se povučete drugačije, to ima drugačije značenje u programu. Manje se koristi u svijetu startupa, ali ima prednost u korporativnim stvarima. Postoji vrlo živa crossover zajednica između. . Što je s velikim podacima i znanosti o podacima?

Vaš zadatak nije naučiti jesti štapićima. I ne radi se o učenju jesti vilicom.

Vaš zadatak je ne ostati gladan!

Stoga u nekim slučajevima možete jesti rukama.

Opet vas podsjećam. Glavna stvar je rezultat. A na koji način postići ovaj rezultat stvar je preferencija i navika. Ako tek počinjete učiti programiranje, tada još nemate nikakve navike ili sklonosti. Stoga možete početi s bilo kojim programskim jezikom i bilo kojim razvojnim alatom. Budući da je učenje jezika i razvojnih alata najlakša stvar. A u procesu naprednog osposobljavanja ipak ćete se morati prekvalificirati nekoliko puta. Jer tehnologije se mijenjaju, pojavljuju se novi jezici itd.

Jesu li ove knjižnice statistike razlog zašto ljudi kažu da je brža? Kad pogledate brzinu, ovo je druga kategorija, sličnija optimizaciji jezika, koja počinje s različitim brzinama. Vaš najbrži jezik uvijek će biti onaj koji je kompajliran do bajt koda ili objektnog koda izravno na računalu. To čini razvojni ciklus mnogo bržim, ali to su sporiji jezici. Nećete ih pronaći u materijalima koji moraju biti brzo izvikani. Na stranu razlike, mnogo je sličnosti.

Ista stvar se događa u drugom smjeru. Jeste li sami učili ili kako ste to radili? Opet, možete vidjeti zašto oba ova jezika imaju zasluženu reputaciju zbog čitljivosti i čiste sintakse i jednostavno zadovoljstvo za razvojne programere. Napredniji je, pa je malo kompliciraniji.

Zaključci:

  • Vaš zadatak je naučiti programirati, a ne naučiti programski jezik (iako će i to biti potrebno, ali to nije glavna stvar).
  • Što je vaš prvi programski jezik jednostavniji, to ćete brže naučiti programirati.
  • Na temelju zaključaka 1 i 2, možemo reći da je bolje započeti s jezicima koji su u početku stvoreni vrlo laki za učenje. Stoga preporučujem da počnete s Pascalom ili Visual Basicom.
A ako se još niste pretplatili na bilten “Programming Fundamentals”, vrijeme je da to učinite: .

Pažnja! Mišljenje ljudi koji odgovaraju na pitanje
možda se neće poklapati s mišljenjem urednika.

Koje programske jezike je isplativije učiti?

Ovo je teža baza za početnike jer postoji više materijala koji morate obraditi prije nego što se osjećate ugodno. Još jedna poteškoća s ovime je da resursi za početnike nisu dovoljno razvijeni. Ne radi se o tome da je zajednica masovno rascjepkana ili da se pojavljuju novi okviri.

Ovo je uvijek vrijedno susreta. Postoje sastanci po cijelom svijetu za obje zajednice. Ako su pronađeni ovdje u Boiseu, vjerojatno su pronađeni tamo gdje su ljudi. Na početku može biti vrlo zastrašujuće jer je zastrašujuće i kao da ne znate dovoljno. Otišao bi tamo i ljudi bi bili sretni. Jako su sretni što ljudi ulaze u to.



CARTER PAGE

Googleov tehnički voditelj

“KRATAK ODGOVOR: NAUČITE C ILI C++.

Možda ga nikada nećete morati koristiti
na poslu, ali svladavanjem ćete puno naučiti. Najteži problemi s kojima se susreću najbolji programeri zahtijevaju poznavanje C-a na ovaj ili onaj način.
Evo nekih stvari temeljenih na C-u:

Oni će imati resurse i savjete. To je slično onome što mentor radi za vas. Koji jezik je zanimljivije učiti ili naučiti? Uglavnom, to je jednostavno zato što je za ljude od početnika do birača jezika daleko jedan od najprijateljskijih. Tako je jednostavno razumjeti kako se to događa s na engleskom na kod. Često je izrada ovog prijevoda s načina na koji ljudi razmišljaju na način na koji razmišljaju računala složen i težak proces.

Pažnja! Mišljenje ljudi koji odgovaraju na pitanje možda se neće poklapati s mišljenjem urednika

Morate se istrenirati da razmišljate drugačije. Zaista ne postoje stvari koje jedan ili drugi ne mogu učiniti. Oboje su toliko svestrani da se mogu nositi sa svim problemima. Postoje stvari na koje su se obje zajednice odlučile više usredotočiti. Općenito, oba su toliko generička da s bilo kojim od njih možete učiniti gotovo sve. Sljedeći koraci za početnike, što bi svatko trebao učiniti?

JAVA VIRTUALNI STROJ

VEĆINA LINUXA

MAC OS X KERNEL

WINDOWS (C I C++)

ORACLE BAZA PODATAKA

CISCO RUTERI

Sve što je u osnovi računalna tehnologija, složen u dizajnu i uvelike utječe na performanse, jednom stvoren u C-u - s malim uključivanjem asemblera.

C će poboljšati vaše vještine Java. Razumjet ćete kada virtualni stroj koristi stog, a kada gomilu i što to znači. Intuitivno ćete razumjeti kako funkcionira sakupljanje smeća. Bolje ćete razumjeti kako koristiti primitivne tipove podataka i objekte.

Također možete provjeriti Block tečajeve da vidite što je tamo dostupno. Za to imamo informativne sastanke. Obožava tacose za doručak i provodi vrijeme upoznavajući bivše studente i osnivače bootcampa širom svijeta. Međutim, ovo je krivo pitanje za početak. Sintakse većine jezika vrlo su slične, ali rade različite stvari ovisno o domeni problema.

Nakon što identificirate problem, možete početi učiti različite jezike koji vam mogu pomoći u rješavanju problema. Ovo je važna točka za mnoge ambiciozne softverske inženjere: "Pronađite pravi alat za posao." Prije nego počnemo, a neki će možda reći, "Samo uskočite."

C će poboljšati vaše vještine Pythona. Njegov sustav klasa uglavnom se temelji na C++. Naučit ćete pisati pismen, dobro organiziran kod, što će vam olakšati rad s njim u budućnosti. Naučit ćete biti oprezniji s globalnim varijablama.

C će poboljšati vaše Objective-C vještine. Naučit ćete kako upravljati brojanjem referenci i razumjeti koji bi dio koda trebao "posjedovati" objekt. Moći ćete izbjeći curenje memorije.

Trebali biste se osjećati vrlo ugodno upravljajući operativnim sustavom po svom izboru. Morate razumjeti osnove strukture datoteke sustav datoteka. Trebali biste moći instalirati aplikacije u operacijski sustav i riješite zašto ova aplikacija ne radi.

Trebali biste znati osnove naredbenog retka i također se kretati kroz njega naredbeni redak. Ako vam se ovako nešto ne sviđa, početak može biti frustrirajući. Ponekad stvari jednostavno ne rade! Postoje trenuci kada jednostavne stvari poput jednostavnog instaliranja paketa za jezik možda neće raditi. Morat ćete kopati po operativnom sustavu kako biste shvatili što se događa dok pokušavate razumjeti zagonetnu poruku o pogrešci. Ako ovo ne zvuči kao nešto što vam odgovara, onda biste vjerojatno trebali sada prestati!

Dakle, što je bolje - C ili C++? Više volim C++ jer iako su vrlo bliski, C++ podržava objektno orijentirano programiranje. Čak i ako radite samo s funkcionalnim jezicima, objektno orijentirano programiranje će vas naučiti kako organizirati kod na način koji vam omogućuje stvaranje i održavanje velikih projekata.

Programski jezici i njihova područja primjene

Dakle, odlučili ste nastaviti, super! Postoje neki primjeri u kojima možda čak i ne trebate učiti kodirati. To su obično ljudi koji samo žele stvoriti blog, web mjesto za e-trgovinu ili poduzetnici koji žele stvarati nova ideja lansirati. Postati vješt u jeziku ne jamči da čak možete izraditi web stranicu na tom jeziku. Ako želite izraditi web stranicu, koristite tehnologiju koja već postoji.

Koji programski jezik trebam naučiti?

Vrijeme je najvažnija roba, a rani i brzi izlazak na tržište važniji je od učenja kodiranja. Za poduzetnike je ova točka posebno važna. Ako ste netehnički osnivač, vaše područje stručnosti bi trebalo biti domena, a ne tehnički detalji implementacije. Iako postoje priče o osnivačima koji su naučili kodirati i postali milijarderi, to su samo odstupanja. U većini slučajeva bolje je i učinkovitije pronaći inženjera ili dobavljača za suradnju koji će vam pomoći u stvaranju vaše ideje.

Možda nećete zaraditi toliko
kao stručnjaci za COBOL (Jedan od najstariji jezici programiranje. - Cca. ur.), koja se može iznenada zahtijevati. Ali nakon C možete naučiti bilo koji drugi jezik. Ako je u industriji računalne tehnologije
a postojanost postoji, ona leži u sljedećem: ono što je danas novo može se za nekoliko godina pokazati staromodnim. Naučite vještine koje vam omogućuju stjecanje novih vještina i bit ćete dobro.”



STEFAN ZUCKERMAN

programer

“Ako znate ispravno organizirati podatke, nije važno kojim jezikom govorite. Postoje tri usko povezane stvari koje trebate znati:

Osnovne podatkovne strukture i algoritmi (povezane liste, hash tablice, uravnotežena i druga stabla pretraživanja, redovi i hrpe);

Simulacija podataka dobivenih iz stvarnog svijeta (razumijevanje logike već izgrađenih modela, sposobnost rada sa standardnim i bibliotekama trećih strana);

Bilo koji programski jezik koji vam odgovara. Ako dobro poznajete jezik i to možete pokazati u praksi, na njemu možete puno zaraditi. Napišite nešto korisno ili samo cool, a ako se ne bojite kritike (ponekad teško) objavite kod na istom GitHubu. Ako
Ako dobro savladate jedan jezik, možete naučiti bilo koji drugi.

Općenito, predlažem učenje nekoliko jezika
s različitim značajkama i razinama apstrakcije,
budući da vas poznavanje samo jednog jezika uvelike ograničava
u pristupima rješavanju bilo kojeg problema.

Ako uzmemo najvišu razinu, preporučio bih jedan od sljedeća tri jezika: Perl, Python, Ruby (i kao varijanta Lua). Imaju mnoge korisne podatkovne strukture ugrađene u njih: hash tablice, dinamičke nizove i druge. Oni također olakšavaju rad
s I/O uređajima i modulima ponude
i knjižnice koje vam omogućuju da odmah prijeđete na rješavanje problema, umjesto da pišete međukod koji
i tako treba biti uključen u bilo koji moderni jezik programiranje;

Imperativ/proceduralni jezik ne previše niska razina: C, Idi, Fortran (moj izbor je C);

Imperativ/objektno orijentirani jezik: C++, C#, Java, Ada (Više bih volio C# jer je stvoren imajući na umu greške u Javi);

Funkcionalni/višeparadigmatski jezik: Objective Caml, Clojure, Common LISP, Erlang, F#, Haskell, Scala, Scheme. Naginjem OCamlu i Scali jer
njihova je sintaksa jednostavnija od ostalih, iako je to, naravno, subjektivno.

Koji god jezik odabrali, naučite ga jako dobro i steknite iskustvo s njim. Znati kako implementirati klasu u Javi je sjajno, ali ako naučite kako skupljanje smeća radi u Javi (ili koji su njeni nedostaci), postat ćete bolji programer. Dobro je znati da možete koristiti module u Perlu,
ali druga je stvar ako shvatite da su oni samo sučelja za C kod: to znači da tumač ne upravlja memorijom automatski. I tako dalje".



reci prijateljima
Pročitajte također