Избор вашег првог програмског језика

Свакако је ово једно од питања које ми највише долази у инбок када говорим о програмирању. Ако ћемо започети серију чланака који ће вам омогућити да научите да програмирате и дајете бесплатно знање у виду доприноса заједницама бесплатног софтвера / отвореног кода широм света, неопходно је одговорити на ово основно, ако је мало тешко питање. Који програмски језик треба да научим?

Мало историје

Да бисмо почели да схватамо и бирамо програмски језик, прво морамо знати мало о њиховој историји, употреби и функцијама и начину на који временом решавају различите потребе.

Машински језици (низак ниво)

Уобичајено познат као Монтажа, су програмски језици које бисмо могли дефинисати као дијалекте општијег језика ... Ово звучи помало компликовано, али ја ћу то дати као пример ... Знамо да је универзални језик рачунарства струја, то значи да су на крају оно што рачунар чита 0си 1да, назовимо ово eрачунарски енглески. У овом примеру је шпанско основно правило, али као што добро знамо, шпански који говоре Латиноамериканци није исти као онај који се говори у Шпанији, па чак и тако, шпански Перу није исти са шпанским Аргентином. Очигледно да сви имамо скоро исте речи (0си 1с), али употреба и значење могу се разликовати у зависности од контекста.

То се дешава на нивоу процесора. Кад говоримо о рачунарске архитектуре, (амд64, интел, арм, ...) упућујемо на дијалект тога рачунарски шпански. То је зато што различите компаније схватају ред и значење на свој начин, па се неке разликују у детаљима, попут протока струје или редоследа којим ће се задржати. 0си 1s.

Ови програмски језици су изузетно брзи, јер раде на најнижем могућем нивоу програмирања, али веома зависе од архитектуре и сигурно су мало сложенији за учење од осталих. Често им је потребна шира база концепата како би се подаци трансформисали и на њима покренуле корисне ствари. За љубитеље видео игара пример би биле СЕГА конзоле, које су користиле Ассембли за програмирање својих игара. Очигледно је у то време количина меморије била минимална у поређењу са данашњом и било је неопходно савладати језик који може бити брз и производити лагане програме.

Језици високог нивоа

Ова велика група размишља о оним језицима који су настали после Монтажа. Потреба за добијањем преносног кода створила је групу језика тзв састављен. Међу њима је први искористио Ц, који је од 70-их година имао превласт у програмирању на нивоу оперативног система.

Састављени језици

Да видимо практични пример онога што коментаришем. Погледајмо врло једноставан програм на језику Ц који штампа један ред кода.

Сопствени. Цхристопхер Диаз Риверос

Након састављања имамо следеће:

Сопствени дизајн: Цхристопхер Диаз Риверос

Али сада да видимо шта бисмо морали да напишемо да бисмо реплицирали исти резултат у скупштинском коду:

Сопствени. Цхристопхер Диаз Риверос

Ово је превод наше три линије кода са simple.c, фајл simple.s креира се помоћу наредбе gcc -S simple.c и то је оно што би наш процесор разумео на дијалекту Монтажа. Очигледно да би се креирала извршна датотека која се састоји од 0си 1с датотеку треба обрадити simple.s и повежите га са заједничким библиотекама нашег система. Ово се ради помоћу а асемблер (as) и а конектор (ld).

Састављени језици пружају велику предност у односу на оне нижег нивоа преносиви. Преносивост доноси код који се може извршити на различитим процесорима без потребе за генерисањем одређеног кода за сваку архитектуру. Још једна очигледна предност је једноставност коју користи приликом читања и писања кода. Међу главним недостацима имамо високу сложеност, јер у поређењу са следећим врстама језика које ћемо видети, слобода коју Ц нуди може бити штетна ако не знате како да контролишете, то је сигурно као да предате пиштољ , могло би се догодити да у недостатку искуства особа заврши пуцајући себи у ногу у покушају да очисти пиштољ.

Тумачени језици

Унутар ове групе имамо велику разноликост језика, међу најважнијима имамо Питхон, Руби, Јавасцрипт, ПХП, итд ... Основна идеја ових језика је пружање брзог начина за стварање и извршавање програма , то је зато што се многи тешки процеси изводе у тумачу, а програмирање логике је оно што је имплементирано у код. Погледајмо исти пример горе, али овог пута написан на Питхону:

Сопствени. Цхристопхер Диаз Риверос

Међу најистакнутијим стварима можемо видети да је први ред задужен за позивање тумача (програм који ће извршити нашу апликацију), а следећи код је „једноставнији“ од његове верзије на Ц, јер је сав тежак посао изведена на тумачу.

Сопствени. Цхристопхер Диаз Риверос

Тумачени језици пружају програмеру већи ниво сигурности, јер имају ригорозније безбедносне контроле (УПОЗОРИТЕ да нису савршени, јер и најбољи могу погрешити) и више не трпимо ризик од пуцања из оружја, а да не схватамо јер би у првом покушају тумач подигао упозорење и извршење би било отказано. Главни недостатак постаје очигледан приликом извршавања програма, јер је спорији од бинарног пандана, управо због веће количине обраде како би се осигурало да код ради. Ако програм не захтева изузетно кратке рокове, разлика може остати непримећена, али ако говоримо о хиљадама или милионима података у секунди, разлика постаје експоненцијално уочљива на компајлираним језицима.

Куцање

Ово је карактеристика програмских језика, то могу бити снажно слабо откуцао. Оставит ћу ову тему за други пост, јер је неопходно и знатижељно схватити како се меморија чува у програму, али за сада морамо само направити разлику: Јако откуцани језици су они који захтијевају познавање врсте података који иду да се ради на променљивој или константи, док слабо типови могу вршити конверзије па имплицитно и све ће зависити од хијерархије конверзије праћене језиком. (ако се сада не разуме, нема проблема, оставићемо за касније)

Парадигме

Као и све у свету ГНУ / Линук, програмски језици се заснивају на парадигмама и око њих се генеришу заједнице. На пример, имамо Питхон Фоундатион o рубин o PHP о Басх (у том случају је то ГНУ заједница). Оно чиме желим да приступим је да не могу да изразим велики број предности и недостатака које има сваки од њих, али могу вам рећи да тамо где постоји бесплатан програмски језик постоји заједница за учење и учествовање. Вреди напоменути да су многи, ако не и сви преводиоци језика, написани на Ц или неком блиском изведеници, а њихов развој обично врши мања група заједнице која је задужена за одлуке које ће утицати на све кориснике језика. Чак се могу формирати институције како би се осигурао правилан развој језика, као што је случај са Ц.

Коју одабрати?

Већ смо довољно разговарали о језицима и још увек не одговарам на најважније 😛. Али надам се да ми након прегледа овог малог чланка није неопходно да вам кажем који језик да одаберете, јер сте са овим информацијама у потпуности способни да потражите онај који изазива радозналост. Очигледно ако желите да научите да програмирате на неком језику Монтажа проћи ће много времена пре него што будете могли да имате нешто функционално, време ће се знатно смањити ако се одлучите за компајлирани језик, где ћете поред преносљивости на * НИКС системима моћи да сазнате и информације у вези са радом система исти систем, јер вас контакт са Ц или дериватима чини да на овај или онај начин научите како оперативни систем функционише на општи начин. Коначно, ако желите да научите нешто лагано, а то вам омогућава пуно, а да не морате много да разумете, тумачени језици су забаван начин за учење и развијање вештина програмирања.

Учите уз нешто узбудљиво

Ово је најбољи савет који вам могу дати, ако желите нешто научити, прво морате пронаћи нешто узбудљиво, иначе ће бити прилично тешко савладати типичну кривуљу учења било ког програмског језика. Претпоставимо да управљате системима, у том случају ћете можда морати научити идеалан језик за скриптинг (протумачено), у оквиру њих имамо Перл, Питхон, Басх итд. итд ... Можда су ваша ствар игре, постоји много пројеката на језицима као што су Јавасцрипт, Луа, Ц ++, у зависности од врсте игре коју желите да играте. Можда бисте желели да направите алат на системском нивоу, јер имамо Ц, Питхон, Перл, као што ћете видети да се неки понављају, а то је зато што се многи језици могу користити за многе задатке, зато дефиниција вишенаменски језици у већини ових.

Започните пројекат

Под овим не мислим да сте креирали следећи компајлер или чак следећи програмски језик, пројекат може бити исправак мале грешке у вашем омиљеном програму, можда чак и помоћи у побољшању документације. Зашто документација? јер не постоји бољи начин да сазнате како софтвер функционише од читања и помагања у писању његове документације, јер је након изворног кода највећи извор информација који ћете наћи о програму. У другом тренутку видећемо како да читамо код пројекта и разумемо функције и вредности које стичу.

Пуно вам хвала што сте дошли овде и као и увек, ваши коментари ми помажу да генеришем бољи садржај и знам где да се фокусирам, поздрав.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   анониман дијо

    Као и увек 10 !!!!!! Хвала на вашим чланцима. Поздрав и још много тога !!!!

    1.    ЦхрисАДР дијо

      Пуно вам хвала 🙂 охрабрује ме да наставим да пишем. Живели

  2.   Рубен дијо

    Мислим да је грешка постављати питање "који језик одабрати?" Ја сам један од оних који мисле да је језика најмање, важно је научити основе програмирања и „рачунарски размишљати“. Одлучите се за синтаксу, њено куцање, да ли подржава ООП, њену корисност итд. Мислим да је то нешто што ће природно доћи у студију и на крају крајева, сваки програмер зна више од 1, 2 и 3 језика ... и захваљујући програмским концептима (а не синтакси) које има, у стању је да програмира на језику који још увек нисте искусили.
    Међутим, за инициране мислим да добар језик може бити Питхон због своје једноставности, али пре свега идите мало даље, проучите алгоритме и знајте како ствари функционишу „изнутра“.

    Поздрав ЦхрисАДР

    1.    ЦхрисАДР дијо

      Здраво Рубен, хвала на подели
      Постоји нешто што сам временом научио у свету програмирања, а то је да „онај ко пуно покрива не стиска“ и под овом добро познатом фразом мислим да се много пута, а посебно најодушевљенији, одлучују да покушајте све мало и врло брзо се окрећите у смислу како научите да кодирате. Верујем, и лично је мишљење, да би добар програмер требало да зна и савлада језик компајлера и језик тумача, поред тога што има појам неког скупштинског дијалекта.
      Разлог је следећи, израда прототипа увек мора бити нешто једноставно и брзо, лако генеришуће и то генерално показује резултат, али ако то није довољно, мора постојати „план Б“ којем се прибегава када преводилац стигне његова граница.
      Познавање дијалекта скупштине не само да вам даје самопоуздање, већ вас учи и да мислите „рачунски“, али очигледно је да је овај део најкомпликованији од свега, а то је сигурно нешто до чега не долазе сви програмери.
      Али, вратимо се теми, јер је главна идеја која мислим да је „изабрати језик и ПУНО вежбати“, јер заиста је једини начин за постизање успеха у програмирању читање и писање кода, а ово је нешто од чега сам научио кернел заједница Када дуго задржавате исту синтаксу, престајете да видите образац и почињете да бринете о ПОВРШИНИ. Идеја одабира језика или синтаксе од почетка је та да је неко у стању да навикне њено читање и писање на такав начин да уме да започне са читањем ЗНАЧЕЊА програма уместо синтаксе програма.
      Ово је главни разлог за овај пост, јер свако бира свој језик, тако да у наставку можемо објаснити концепте, можда се овим разјасне недоумице 🙂
      Поздрав и хвала на подели.

  3.   деибис цонтрерас дијо

    хвала на посту био је добар.

    поздрави

    1.    ЦхрисАДР дијо

      Здраво Деибис, хвала ти што си поделила 🙂 Поздрав

  4.   ЈоргеФС дијо

    Мој савет: било шта осим ПХП-а. Пре двадесет година ПХП је имао одређени смисао у свом постојању због високог нивоа сложености који је програмирао веб на другом језику користећи ЦГИ. Али данас постоји велика разноликост Фрамеворкс-а како би развој веба био много угоднији на моћним језицима, као што су Дјанго за Питхон, Спринг за Јаву или Раилс за Руби. Иако се ПХП тренутно појављује на свим табелама популарности језика, по мом мишљењу ПХП ће временом изгубити на значају.
    Топло саветујем да започнем са Ц \ Ц ++ да бих разумео стварност програмирања, иако је крива учења стрма.
    Поздрав.

    1.    ЦхрисАДР дијо

      Здраво Јорге, хвала на подели, само се сећам Ларавела, што је прилично чврст оквир ми. Ја лично никада нисам волео Спринг или Јава за веб развој, сматрам да је прилично гломазан, али претпостављам да је то део времена на тржишту, у то време су били пионири и сигурно су данас модерне алтернативе (Јс, Питхон и Руби) успеле да побољшају начин представљања кода који је читљив и модификован без пуно рада.
      Такође сам склон људима који уче Ц / Ц ++ у неком тренутку свог живота, почео сам са Јавом, али претпостављам да је у томе лепота програмирања, можете почети са чим год желите, све док сте доследни да ће вам бити од помоћи 🙂 Живели

    2.    Рубен дијо

      Не могу се више сложити с тобом. Почео сам пре много година са Ц и ВБ, да бих се касније усредсредио на ПХП и ЈС (будући да сам се фокусирао на веб развој), а касније током студија учио сам углавном Ц / Ц ++ и Јаву.
      ПХП има бројне предности које нисам могао да наведем у овој поруци. ПХП7 је брз (бржи од Питхона ... без употребе ххвм-а, различитих кеш меморија, оквира попут Пхалцон-а или битецоде-а у случају Питхон-а), има огроман број библиотека и оквира, има огроман број директно имплементираних функција за њихово коришћење у било ком тренутку, његова синтакса тако слична Ц-у омогућава врло лако прелазак на друге језике.
      30% веб локација широм света направљено је помоћу ВордПресса (ПХП) и чини се да се то не мења, Википедиа га користи, Фацебоок (са ххвм) и велики број веб локација, укупно 80%.

      Подсећам вас да Руби он Раилс попут Дјанго има 12 година! Какву су квоту постигли за ово време? И наравно, говоримо о 2 оквира који практично имају монопол и не постоји врста фрагментације. Које друге озбиљне алтернативе имам? Говорити о томе да ће ПХП изгубити релевантност нема много смисла.

      Сад кад је Питхон у моди јер има брзу криву учења, то је једноставан језик и они вам га продају као „постаните програмер за 20 сати са Питхоном и радите на њему“, уз подршку компанија попут Гоогле-а и да сада постоји Мода да тражите нове језике (Го, Дарт….) Како бисте се разликовали у ЦВ-у (или као дневно рођење 50 оквира за Јавасцрипт!), Не значи да се ствари мењају.

      Руби је веома занимљив језик, али толико се разбија са устаљеним обрасцима да ми је тешко да поверујем да је постао популарнији од ПХП-а. Наравно, Руби мислим да је најгори језик за започињање програмирања од свих.
      Разумем да сте ми рекли да Питхон може бити забавно програмирати, чак и Руби са својом бесконачношћу посебности ... али Спринг са Јавом? Стварно? Јава може бити много ствари ... али угоднија од Питхона и ПХП-а?

      Све је врло добро започети са Питхоном, али пошто се држите само Питхона, ризикујете да ће многе компаније поверовати да ваш ниво програмирања није „дубок“ (чак и ако сте веома добри у Питхону). То је зато што се такмичите са другим „вишенаменским“ језицима као што су Ц ++ или Јава. Можете програмирати на Питхону, а да не знате разлику шта је дођавола показивач, битне операције, како ради сакупљач смећа и дугачка итд.
      Пајтон је можда најмање сличан „класичном програмирању“ које постоји и на које се може гледати као на „дечји језик“ (схватите метафору), а то је заузврат предност и недостатак.

      1.    ЈоргеФС дијо

        „Пајтон је можда најмање сличан„ класичном програмирању “који постоји и који се може видети као„ језик за децу “(разумејте метафору), а то је заузврат предност и недостатак. ЛОЛ, ово је једна од најсмешнијих ствари које сам видео о Питхону. Да ли сте икада заиста научили Питхон?
        Колико дуго постоји широм света изван ПХП-а?
        Пријатељ ПХП рођен је мртав. ПХП (\ д +) носи много терета због врло лошег почетног дизајна, а како би одржао корисничку заједницу, наставља да темељито повлачи све те почетне грешке у дизајну. ПХП је рођен без модуларности, са пуно функционалности у стилу Ц (што, успут речено, не знам одакле вам, јер је његова синтакса слична Ц-у, лако се преноси на друге језике). Језик високог нивоа, какав би се ПХП требао понашати, има тако ружне ствари као што је овај траг функција наведен на његовој званичној страници http://php.net/manual/en/indexes.functions.phpТо је зато што је рођен без модуларности, па је све прљаво помешано и без простора имена.
        Ово је део ПХП кода:
        „Стреам_нотифицатион_цаллбацк“);
        стреам_цонтект_сет_парамс ($ цтк, $ парамс);
        вар_думп (стреам_цонтект_гет_парамс ($ цтк));
        ?>
        у неком тренутку можете ли да утврдите одакле су све ове 'стреам' функционалности увезене? НЕ, онда бисте могли рећи да су то функције уградње, али онда је читав екосистем у функцији изградње. И тако, у ПХП коду има пуно смећа, па ако нисте у стању да схватите сложеност и бескорисност тако лошег дизајна, опростите ми, али још увек има много света за видети.
        Вордпресс је изврсно софтверско решење, али то не значи да има добру технолошку основу. Можете да чекићите каменом и зубима избијате ексере, а и даље можете да радите одличне столарске радове, али наравно, са много више посла од другог столара који користи добар чекић.

        С друге стране: „постани програмер за 20 сати са Питхоном и ради на томе“, никада нисам видео такву глупост. Можете да направите веб страницу у ПХП-у за 20 сати и без знања о томе како функционише веб програмирање или само програмирање. У ствари, због тога је ПХП толико популаран, јер новајлије које улазе у овај свет виде ПХП као тачку брзог развоја (због чега толико ПХП кода толико усисава).
        Што се тиче Питхонових недостатака, једини у коме је успео био је рад са показивачима, али у сваком случају, Питхон је језик високог нивоа (као и Јава) и не користи их на нивоу синтаксе; али битне операције, озбиљне?, мислите на ово к << и, к >> и: https://wiki.python.org/moin/BitwiseOperators. Озбиљно сам схватила ствар са сакупљачем смећа: https://docs.python.org/3/library/gc.html.
        ПХП празнине:
        -ПХП има врло лош дизајн објектно оријентисаног програмирања (ООП).
        -Не можете још преоптеретити оператере.
        -Изненађење, function overloading у ПХП-у није оно што природно очекујете од овог концепта.
        ... .. и баш ми је досадило хехе.
        Поздрав.

        1.    Рубен дијо

          Ставио сам у заграде „разумем метафору“ (упоређујући Питхон са Ц ++ / Јава у истом радном окружењу), јасно је да је нисте разумели. Могао бих вам рећи да програмер на Ц ++ може научити Питхон на много бржи начин него што програмер на Питхон може научити Ц ++, баш као што није изненађење да је просечна зарада програмера на Ц / Ц ++ већа од Питхон један.
          Могао бих вам то објаснити на другим примерима, чак и на цртежу! али изгледа да се фокусирате само на деконтекстуализацију и исмевање онога што сам изнео.

          Ни у једном тренутку нисам рекао да је ПХП најбољи језик на свету или да има примеран дизајн, не знам одакле вам то. Мислим да пре него што оцените знање других треба да побољшате своје разумевање читања. Тачно је (и рекао сам у својој поруци) да је развој с њим врло окретан, поред целокупног екосистема оквира, библиотека и услужних програма које можете пронаћи.
          Такође, какво поређење правимо? Питхон као вишенаменски језик или за веб? Зашто га у том случају упоређујемо са ПХП-ом? ПХП има одређено поље и то је оно поље где Питхон (са уделом од 0.2%, који се није променио током целе године) бледи поред ПХП-а.
          Сада да видимо ПХП трендове; са 82,4% у јануару 2017. на 83.1% у јануару 2018: https://w3techs.com/technologies/history_overview/programming_language

          Да ли ће Питхон скинути с трона ПХП? Које године? за којих пет година? декада?
          Питхон ће моћи да се користи у многим другим задацима, па чак и да се шири од ПХП-а, али Питхон као језик за веб развој удаљен је светлосним годинама да буде чак и релевантан, 0.2% стагнира у односу на 83.1% (уз пораст ове године).

          Такође ствари узимате здраво за готово тако што кажете да не идем около изван ПХП-а, наговештавајући да ПХП знам само онда када већ дуго нисам програмирао у ПХП-у хаха. Тренутно из радних разлога углавном програмирам на Јави.
          Нити сам рекао да програмирањем на Питхону немате знања о битовима, сакупљачу смећа или показивачу. Уместо тога, можете програмирати на Питхону, а да ни сами не знате шта је ово. Међутим, дубоко сумњам да би то био случај за програмера на Ц ++. И очигледно радим поређење када Питхон уђе у то поље „вишенаменског језика“, а не за веб програмирање.

          Постати програмер за 20 сати је једноставно шала, претеривање. Међутим, могао бих вам овде ставити разне линкове о мрежним образовним платформама и курсевима који обећавају сличне ствари. Не замерите ми, замерите на тржишту рада које сматра да је постајање „стручним програмером“ ствар похађања 20-часовног курса. А Питхон је један од модерних језика и такође, са најбржом кривом учења ... бели и у боци.

          Инсистирам, своју поруку заснивате на томе да кажете колико је ПХП лош (што се у одређеном делу слажем). Чини ми се тачним, осим што моја порука није о томе, већ о томе зашто ће се ПХП и даље користити и неће нестати сутра како мислите.

          поздрави

  5.   нико дијо

    Ц -> Иди -> (Лисп | Хаскелл | Јава | било шта)

    1.    ЦхрисАДР дијо

      Недавно ми је читалац послао на мој е-маил препоруку књиге Го, сигурно језика који треба узети у обзир у будућности и о којем ће можда овде бити пост 🙂 Много слика за дељење

  6.   мвр1981 дијо

    Па ... и шта да програмирам? Зашто данас учити програмски језик са тако добрим и искусним програмерима који већ постоје? Које проблеме могу да решим, а други нису решили на много ефикаснији начин? ... Укратко: Колико је оригиналност програмера данас? Како могу да сарађујем са другима, а да ме недостатак знања и искуства не избаци?

    1.    ЦхрисАДР дијо

      Поздрав мвр1981, заиста занимљива питања 🙂 намотаваћемо их од последњег до првог.

      Како могу да сарађујем са другима, а да ме недостатак знања и искуства не избаци?

      Ако не желите да вас изударају, први корак је научити процес, не можете да замислите број људи који долазе на пројекте који желе да раде ствари искључиво на свој начин, желећи да се заједница прилагоди њиховим жељама. То је сигурно као да долазим у вашу кућу и правим неред и не поштујем вашу породицу (тако се осећа много пута). Ако желите да спречите да се ово догоди, добро обратите пажњу на смернице за допринос, средства којима то можете учинити и не шаљите нешто непотпуно, ако вам је потребна помоћ, увек постоје средства за комуникацију, али лоше обављен посао ће вероватно стварају лоше прве утиске. Ако не желите да се искључите, то зависи од вас, можете га видети као бескорисног програмера који не зна шта ради или онај који је на путу да постане изврстан програмер, а то се дешава само уз праксу и сигурно са бубама успут. Много пута сам погрешио пре него што сам добио статус програмера на Гентоо-у, и то ме није спречило да покушам упркос „лошем времену“ 🙂.

      Колико је оригинално бити програмер данас?

      -Није ствар у оригиналности, она је данас неопходна, само размислите о следећем, пре 20 или 30 година, куцање је било неопходност, многи послови су закључили да сте знали или бар могли да то урадите. Данас је познавање система Оффице неопходно, практично нема посла који вас не стави пред Оффице документе. Сутра, врло брзо, програмирање ће бити неопходно. А ово се односи и са личне тачке гледишта, сазнање шта се дешава у програмима којима поверите тако важне ствари као што су новац, здравље, породица, за мене је нешто логично, јер њихова ограничења можете знати само ако знате како посао и да бисте га знали, морате знати како програмирати.

      Које проблеме могу да решим, а други нису решили на много ефикаснији начин?

      -Био би изненађен количином Карактеристике који су данас потребни, и истини за вољу, није важно што у заједници постоје најбољи програмери на свету, рад ће увек бити већи од радног капацитета програмера, то могу да проверим у Гентоо-у, тамо су људи који развијају језгро, људи који раде за Гоогле, Сони итд. итд ... једино што нам је свима заједничко је да нико нема толико времена колико би желео да може да уради сав посао који чека.

      Зашто данас учити програмски језик са тако добрим и искусним програмерима који већ постоје?

      -Ово је одговорено у другом питању 😉 Али сада могу да додам да генерације морају бити у стању да подрже рад који је већ развијен, под тим мислим да ће ти "искусни" програмери постепено нестајати и биће потребно за " млађи »Програмери преузимају одговорност и помажу у одржавању циклуса, заједница која нема младе и неискусне људе склона је нестајању с временом, управо зато што неће бити могућности за пренос знања.

      И шта да закажем?

      -Ово је можда најтеже одговорити, али покушаћу вам дати пример поцо који сам недавно почео да трпе због проблема са ГНОМЕ 24 и његовом везом са Ваиландом који спречавају програме попут Схуттер-а да праве снимке екрана. Ово ми представља проблем јер када пишем своје чланке, морам да вам покажем шта кажем 🙂 осврћући се мало око себе, дошао сам до апликације ГНОМЕ Сцреенсхот, у најмању руку помало „минималистичке“. Међу његовим функцијама постоји и снимање региона екрана, али шта ће се догодити ако фотографију нисам добро снимио? Па, морам да изађем и поново уђем у програм, нешто заморно сигурно, помогло би ми дугме на којем пише «Поновно снимање» или слично, што ми омогућава да снимим ново снимање без потребе да излазим и улазим поново. програмског пројекта, никада нисам ништа програмирао у ГНОМЕ оквиру, тако да очигледно морам много тога да научим пре него што пошаљем своју „закрпу“ новим дугметом, али успут учим да програмирам и надам се да ће ово одлика помоћи ће више од једног кад је доступан свима.

      Ово је пример, нешто је једноставно и то би сигурно могао да уради било који други „стручни“ програмер, али због очигледног недостатка времена то није било тако, сада сам ја тај који има могућност да то уради то, а да заправо нисте супер програмер.

      Сада је само на вама да пронађете нешто што би вам живот учинило „једноставнијим“ у том софтверу који тако често користите, лепота тога је у томе што ако следимо савете које ћу вам дати у следећим чланцима, језик неће бити важан, јер ћете знати основе како бисте почели да разумете код који сте прочитали и модификовали га тако да ради шта желите, то је врло посебан осећај 🙂

      Поздрав и још једном хвала

      1.    нико дијо

        Мислим да је само једном када сам отворио програм гноме цаптурес најлакше отићи на пречице на тастатури и доделити три комбинације принт за снимање свих алт-принт за снимање активног прозора и супер-принт за избор из снимања регион, доступне пречице су овде, једноставно је питање њиховог додељивања

        1.    ЦхрисАДР дијо

          Због тога вам дајемо пример 🙂 јер мале ствари попут тог дугмета програмирају, некима могу помоћи, јер друге могу остати непримећене, али сигурно испуњавају главни циљ, помажу научити програмирати и уступају место новим функцијама, Након тог дугмета могу се покренути многе ствари, попут управљања сесијама или екрана за преглед свих снимљених фотографија, или укратко, пуно ствари које би се могле учинити. Идеја је да пронађете нешто због чега ћете знатижељу знати, било који софтвер који се покреће на вашем систему можда ће требати побољшања или нове функције које због недостатка времена или особља још нису примењене 🙂

      2.    мвр1981 дијо

        Захваљујући теби. су врло добри одговори.

    2.    Гиљермо дијо

      Па, некоме ко неће бити професионалац на том пољу било би неопходно да види у ком окружењу раде, како за административне задатке, тако и за директиве, може бити занимљиво знати, на пример, Питхон / Басиц и знати како за програмирање макронаредби у канцеларијским пакетима као што су ЛибреОффице или МС Оффице. Постоје тренуци када ово може уштедети много сати рада за вас или друге раднике који вас окружују и затражити од њих да изврше било који поновљени задатак, можете створити контролну таблу за брзо израчунавање главних односа предузећа након повезивања са базом података о њему и изврши неки СКЛ упит.
      Као и све остало, ако знате алате надохват руке, можете размислити како да извучете максимум из њега. Није све измишљено.

  7.   Марчело дијо

    Гуиллермо, потпуно се слажем са тобом, „Није све измишљено“ и оно што је измишљено може се променити. Морате извући максимум из алата и користити онај који најбоље одговара вашим потребама.

  8.   Рикардо дијо

    За програмирање, први језик који се учи је енглески, затим онај који их највише привлачи и чини им се најлепшим.

    1.    ЦхрисАДР дијо

      Нисам је написао, али истинито 🙂 познавање енглеског много помаже јер је већина језика написана на њему, али и зато што је већа количина информација из прве руке 🙂 Хвала вам што сте поделили

  9.   Рубен Салгадо дијо

    Одличан чланак, поред мотивације.

    1.    ЦхрисАДР дијо

      Врло љубазно, пуно вам хвала 🙂 Поздрав

  10.   Гонзало мартинез дијо

    Програмирање је знати како расуђивати и превести то образложење у упутства.

    Два појашњења о чланку:

    1) На основу мог искуства као наставника програмирања током скоро 10 година, није важно са којим језиком учите, већ како учите и колико је сложен.

    Мислим да је језик који се може научити на структуриран начин, а затим прећи на друге сложеније ствари, лакше него започети с језиком као што је Јава од почетка.

    Лакше је научити нешто попут Хелло Ворлд на Ц или Пасцалу као основу, него са неколико редова (ПРОГРАМ у случају Пасцал, или #инцлуде У случају Ц) можете почети да развијате алгоритам и директно кодирате програм са његовом логиком, као у Јави, која сама по себи треба класу, метод и неке друге ствари које су за почетнике преоптерећење информацијама непотребне, а то би могло бити занемарено и прећи на друге ствари, али то су концепти који постоје, и по мом мишљењу, превиђање ствари није добар начин за учење, посебно ако вас језик присиљава да их користите. То је као да први пут започнете циљање са М-16 и пуцате месецима у полуаутоматском режиму држећи дршку обема рукама попут пиштоља.

    2) Да ли ће се језик тумачити или компајлирати зависи од његове примене, а не од самог језика. На пример, ако се користи Питхон, за веб апликацију која користи всги (или мод_всги у апацхеу, или увсги за Нгинк), питхон код се компајлира приликом покретања одговарајућег модула, генеришући .пиц датотеке

    Постоје и бинарни генератори датотека за јаву (који генеришу изворне бинарне датотеке уместо бајт-кода) или компајлери пхп скрипти у чистим бинарним датотекама.

    Што се тиче онога што кажу о ПХП-у, то је једноставно језик дизајниран у другој ери, имајући на уму друге ствари, и без разматрања аспеката који у то време нису постојали. Чињеница да се најчешће користи не чини га најбољим за било шта на свету, али постоји стварност: то је језик са којим постоји највише шанси за запослење у свим програмима. Знајући да то не боли, чак и ако вам се не свиђа.

    Чак и ја радим као системски администратор неколико година и напустио посао програмера, свако толико морам у нешто да убацим ПХП код.

    1.    ЦхрисАДР дијо

      Здраво Гонзало, хвала на подели,

      Свакако говорећи о непотребним преоптерећењима информацијама, знање да се исти језик може протумачити или компајлирати је нешто што у овој фази није неопходно 🙂 Свакако је примена важна, али ако то кажемо на овом нивоу, не стварамо више од забуне. На исти начин се не решавају објектно оријентисана питања програмирања или други концепти који се морају постепено дозирати како се људима не би завртело у глави.

      Будући да је простор ограничен, главни циљ поста је показати читаоцима који желе да програмирају да постоје два велика света језика, да су „традиционално“ протумачени „једноставнији“, да су „традиционално“ састављени помало „сложенији“, али вреди тај ниво сложености имати чвршће разумевање и да је на свакој особи да изабере језик, јер ће у зависности од програмског приступа моћи да бира своје омиљене пројекте, а истовремено ће бити у стању да разуме шта читају и / или пишу 🙂

      Хвала још једном, поздрав.

      1.    Гонзало мартинез дијо

        Ово је грешка, не постоје компајлирани или протумачени језици, постоје тумачи и компајлери за сваки језик, оба за различите случајеве.

        Није преоптерећено информацијом помињати то сада, погрешно је давати такву изјаву. По мом мишљењу, било би продуктивније игнорисати преводиоце да не желите да се преоптеретите информацијама.

        1.    ЦхрисАДР дијо

          Хвала на појашњењу, узећу то у обзир кад се вратим на тему. Живели

  11.   Арес дијо

    Који језик препоручујете за серверску страну узимајући у обзир да је ПХП пропао?
    Исто за базе података, не знам да ли ће бити нечег бољег и модернијег од миСКЛ-а.

    1.    ЦхрисАДР дијо

      ПХП није пао у немилост ... Сваки језик има свој животни циклус, а пхп је сигурно већ језик који улази у лествицу „зрелих“, што га чини корисним на пословном нивоу, где је стабилност изнад свега ... Као и неке банке у којима је још увек развијена у Јави, која је „зрелија“ од пхп-а и сигурно има своје следбенике и клеветнике ... А о ЦОБОЛ-у да и не говоримо ...

      Ако је оно што тражите уједначеност и модерност, јавасцрипт постаје један од омиљених такозваних „фулл стацк програмера“, мада су рубин парадигма или „једноставност“ питхона такође добре референце…. Чак и перл може бити опција у зависности од потреба 🙂

      У данашње време ОРМ (објектни релациони мапери) узима велику снагу у погледу управљања релационим подацима. Прелази из СКЛ синтаксе у руковање разредом и атрибутима ... Готово сви језици (ако не и сви) обрађују неки ОРМ.

      . Монго ДБ је алтернатива релационим базама података која је постала прилично важна, али неопходно је знати њене предности и недостатке и потврдити да ли би то било најбоље решење у зависности од специфичних потреба.

      Надам се да ће вам помоћи, поздрав 🙂

      1.    Арес дијо

        Хвала, проверићу то.

      2.    Арес дијо

        Заборавио сам.

        Шта ми препоручујете да радим са ЈАВА-ом у Линуку?
        Ако можете боље да разликујете између бесплатног и затвореног.

        1.    ЦхрисАДР дијо

          Ецлипсе и НетБеанс су отвореног кода, нисам сигуран да ли постоји неки чисто бесплатан софтвер, имам навику да користим вим, јер понекад количина кода чини коришћење читавог ИДЕ-а спорим и склоним грешкама у извршењу. Поздрав 🙂

        2.    ПаулЗета дијо

          За рад са јавом у Линуку користим ИнтеллиЈ, препоручујем вам.

          1.    ЦхрисАДР дијо

            ПС, ИнтеллиЈ је власнички софтвер 🙂

  12.   je дијо

    Момци се такође сећају да ... Радим у банци и кажем вам да програмски језици заостају да би СКЛ и Сторед процедуре прво ишли.

    1.    Гонзало мартинез дијо

      Морате их узети у обзир ускладиштене процедуре, али ако се не користи преносни језик између мотора, барем према мом искуству, увек се ради о њиховом избегавању, осим ако не постоји друга опција.