Споро плесање са технологијом: Отклањање погрешака, програмер и машина

Аутор: Judy Howell
Датум Стварања: 28 Јули 2021
Ажурирати Датум: 21 Јуни 2024
Anonim
30 глупых вопросов рекрутеру [IT карьера]
Видео: 30 глупых вопросов рекрутеру [IT карьера]

Садржај


Извор: Абсцент84 / иСтоцкпхото

Одузети:

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

Свако ко је радио на кодирању чак и најосновнијих пројеката зна да процес захтева мало стрпљења. Многобројне замке покушаја писања кода испочетка су песма и плес многих начина на које људски програмер или програмер могу погрешно схватити. Дуга је листа и укључује све, од синтаксичких грешака, које компилатор обично ухвати, до дубљих грешака на „визији“ који захтевају интелигентнији преглед. У том смислу, школе и центри за обуку уче студенте информатичких технологија како да направе "грешку" у програму. Оно што је занимљиво је ипак да сваки појединац развија свој властити врло јединствен одговор на овај изазов. У ствари, ово је можда област у којој се тражи више од мало личног увида. (Прочитајте о неким од најважнијих програма програмирања у Пионирима рачунарског програмирања.)


Код за уклањање погрешака: како је направљено

У неким случајевима, професионалци из рачунарске науке могу да користе ресурсе из студијских програмера или окружења за програмирање да би изоловали грешке у програму. Међутим, када такве врсте руковања грешкама или систем нису доступне или корисне, уклањање погрешака захтева пролазак кроз код по ред по ред. Много програмских окружења, као што је Мицрософт Висуал Басиц Студио, имају функције које омогућавају јасно, визуелно линијско "прелазак" кроз код.

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

Баттлинг Бугс

Горе описани поступак може звучати једноставно, али стварни изазов за уклањање погрешака може бити много сложенији. Одличан пример овог процеса на делу може се наћи у технолошком трилеру који је Еллен Уллман, бивша програмерка и ИТ стручњакиња под називом „Буба“, проза сјај на књижевни начин. Иако је књига фикција, она открива много тога што се заправо догађа када програмери и рачунари комуницирају.


Остављајући по страни много мрачних личних детаља у књизи, Уллманов приказ две особе, тестера и програмера, показује неке од главних изазова са којима су се ове каријере сусреле у ранијој фази развоја софтвера. У основи, њена грешка, коју назива "Јестер", избегла је све у софтверској компанији из 1980-их, затегнувши односе са запосленима, урушавајући поверење инвеститора и уопште проузрокујући пропадање. У међувремену, аутор прилично размишља о томе како рачунари утичу на нас и зашто, ако желимо да победимо над њиховим идиосинкрацијама, морамо „да размишљамо као машина“. (Да бисте сазнали више о историји програмирања, погледајте рачунарско програмирање: од машинског језика до вештачке интелигенције.)

Зашто грешке избегавају снимање

Један од разлога због којег је грешка у Уллмановој књизи била тако тешка за решавање је тај да се појавио тек у чудним временима. Овај изазов заиста важи за многе друге такве пропусте (само се сетите Тоиотиног опсежног испитивања након што су гласине корисника о одбеженом Приусу). Претпоставимо да вам неко каже да имате бубу. Ако не можете да направите проблем да рачунар очигледно створи проблем, одакле то уопште почети у смислу његовог поправљања?

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

Када је у питању грешка у рачунару, лукав детаљ може бацати иначе наређени систем у хаос. Добре вештине кодирања, стога понекад могу бити више уметност него наука (Уллман то назива „лудилом“), што кодирање чини инхерентно неуредним послом.

Без грешака, без стреса - Ваш корак по корак водич за креирање софтвера за промену живота без да вам уништи живот

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

Филозофија грешке

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

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