Реклама

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

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

1. Принцип блоат-а

Ова има толико много варијација да је тешко одабрати једну као главну. Можда је „званична“ верзија закон о програмском омотавању, који се чешће назива Завински закон, названа по Јамиеју Завинском и споменута у Уметност УНИКС програмирања:

„Сваки се програм покушава проширити док не може читати пошту. Они програми који се не могу тако проширити замењују се онима који могу. “

instagram viewer

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

Ово се такође може применити на перформансе софтвера:

„Софтвер се шири и троши све расположиве ресурсе.“

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

Најчуднији принципи програмирања за које никада нисте чули да програмирате мац лаптоп

2. Менталитет „горе је боље“

Скоро као да одговоримо на начело Блоат, имамо Још горе је бољи менталитет, први пут сковао Рицхард П. Габријел је у есеју написао о квалитету софтвера:

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

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

Шта се догоди кад ово игноришете? Завршили сте с Софтвер Петер Принципле:

„Превелико сложен пројекат ће с временом постати превише сложен да би га схватили чак и сопствени програмери.“

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

3. Орлов закон

„Било који сопствени код који нисте гледали шест или више месеци можда је написао и неко други.“

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

Другим речима: ако се осврнете на стари пројекат и не видите ништа што бисте могли побољшати или урадити другачије следећи пут, вероватно ћете стагнирати као програмер.

4. Начело најмањег изненађења

„Ако нека значајка има високу фактор изненађења, можда ће бити потребно да је редизајнирате.“

Прво објављено у ИБМ Системс Јоурнал давне 1984. године, овај принцип је и данас изненађујуће релевантан - можда више него икад раније.

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

Најчуднији принципи програмирања за које никад нисте чули да програмирате кафу за лаптоп

5. Закон кибернетичке ентомологије

„Увек постоји још једна грешка.“

Често називају Закон Лубарског о кибернетичкој ентомологији, није јасно ко је заправо Лубарски. Међутим, његов принцип важи за све програмере: без обзира како чисто написали свој код, без обзира на то робусно тестирате своје модуле, без обзира колико често рефакторирате наставу, увек ће постојати још једна грешка.

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

6. Кернигханин закон

„Отклањање грешака је двоструко теже него писање кода. Стога, ако напишете код што је паметније могуће, по дефиницији нисте довољно паметни да бисте је отклонили. "

Бриан Кернигхан, исти онај ко је био коаутор Библију програмског језика Ц Зашто програмирање Ц још увек вреди учитиЦ није мртав језик. У ствари, ИЕЕЕ Спецтрум магазин ју је уврстио на прво место на првом месту у 2017. години. Ево пет разлога због којих. Опширније , познат је по овом проницљивом закону. Суштина свега је ово: пиши Добро код, напиши читљив код, напиши једноставан код, све док није паметна код.

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

И као Роберт Ц. Мартин објашњава, није реч само о уклањању погрешака:

„Заправо, омјер времена проведеног на читању у односу на писање је добро преко 10 према 1. Стално читамо стари код као део напора за писањем новог кода... [Дакле,] олакшавање читања олакшава писање. "

Најчуднији принципи програмирања које никад нисте чули за програмирање гумених патки

7. Отклањање грешака од гумене патке

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

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

Из тог разлога, гумена патка може бити изненађујуће сјајан поклон за програмере Најбољи геек поклони за програмере: 20 идеја за кодере и нердеТражите поклон за програмера? Овде су најбољи поклони за геек, у распону од механичких тастатура до стојећих столова и још много тога. Опширније , било да га купите за себе или за вашег програмског другара.

8. Правило деведесет и деведесет

„Првих 90 одсто кода представља првих 90 одсто времена развоја. Преосталих 10 процената кода чини осталих 90 процената времена развоја. "

Та смешна мала пословица Том Царгилл-а има у срцу зашто програмирање може бити тако фрустрирајуће: без обзира колико мислите да сте близу да завршите, много даље него чак и ваше најбоље процене. Кад мислите да сте готови, тек сте на пола пута.

То иде руку под руку са Хофстадтеровим законом:

„Увек траје дуже него што очекујете, чак и када узмете у обзир Хофстадтеров закон.“

Најчуднија начела програмирања које никад нисте чули за вријеме кафе лаптопа

9. Паркинсонов закон

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

Овај један принцип, који је сковао Цирил Нортхцоте Паркинсон, је шири принцип који се апсолутно односи на програмирање и важи руку под руку с горе деведесетдеветним правилом: колико год времена имали да завршите пројекат, тачно је колико ће трајати узми. У развоју софтвера, „завршити рано“ прилично је мит.

Паркинсонов закон је разлог зашто су одговарајући рокови кључни ако желите да довршите и отпремите свој софтвер. Зато модерни професионални програмери често препоручују принципи агилног управљања пројектима Како се користе принципи агилног управљања пројектима за организовање вашег животаАгиле, најпознатији као метода управљања пројектима, одличан је оквир за управљање вашим личним животом. Показаћемо вам које принципе можете позајмити - укључујући бесплатно преузимање радног листа! Опширније и алате за управљање пројектима попут Асане Трелло вс. Асана: Најбољи бесплатни алат за управљање пројектима је ...Избор између Трелла и Асане је тежак. Овде упоређујемо бесплатне планове и помажемо вам да одлучите који је алат за управљање пројектима најбољи за ваш тим. Опширније .

10. Брооков закон

„Додавање радне снаге касном софтверском пројекту то чини касније“.

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

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

Напријед као програмер

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

Са овом новонасталом мудрошћу сада можете приступити а каријера програмирања са великом потражњом 10 Послови за програмирање рачунара који су тренутно у потразиПошто слетање програма програмирања може бити тешко у тренутном пејзажу, размислите да се фокусирате на једну од следећих концентрација како бисте побољшали своје шансе за успех. Опширније са реалнијим очекивањима. За то научите како максимизирате своје могућности каријере у програмирању Како побољшати своје каријерне могућности програмирањаАко се надате да ћете започети, поново покренути или на неки други начин побољшати своју програмску каријеру, то није лако. Ако сте на факултету, време је сада. Ево неколико савета који вас могу одвести далеко. Опширније . А ако одлучите да програмирање није за вас, немојте се бринути - размислите о једном од њих умјесто тога некодирајући технолошке послове Кодирање није за свакога: 9 техничких послова које можете добити без његаНе обесхрабрујте ако желите да будете део технолошког поља. Има пуно послова за људе без вештина кодирања! Опширније .

Који од ових принципа вам највише верује? Знате ли који други чудан програмски принцип који смо пропустили? Јавите нам доле у ​​коментарима испод!

Јоел Лее има Б.С. у области рачунарске науке и преко шест година професионалног писања. Главни је уредник МакеУсеОф-а.