Blog gunsmoker-és programozás egy művészeti -

Sok fogás kifejezés, azt mondja: „A programozás egy művészeti -” nincs tisztában a jelentését, gyakran kiegészítve azt, mint a bélyeget ( „art áldozatot követel”). Néha láthatjuk, míg az ellenkező képet - programozás szintre csökkent a „mechanikus vágás csavart a gép.” Egyesek azt állítják, kézműves és művészeti programozás (és talán a tudomány). Sokan egyszerűen nincs különbség.

A koncepció már népszerű az első napokban a programozás programozás - egy mérnöki fegyelem. Aztán jött használatba, a „szoftverfejlesztés”. A lényege az, hogy a program lehet fejleszteni a hagyományos mérnöki tudományok. Ebből a szempontból a programozás akkor egyszerűen a mérnöki al-régió, amely szorosan kapcsolódik a számítástechnika. És ez a fogalom ( „szoftverfejlesztés”) nem tévesztendő össze a „szoftver kifejlesztésére”, amely egy általánosabb fogalom, a folyamat, amelynek célja, hogy létrehozza és fenntartja a hatékonyság, a minőség és a megbízhatóság a szoftver nem feltétlenül használják ezt a mérnöki szemléletet.

Mérnöki megközelítés eredetileg azt javasolta, hogy foglalkozik a következő jelenségeket:
  • Projektek haladja költségvetést.
  • A projekt meghaladja határidőket.
  • A szoftver már túl hatékony.
  • A szoftver már túl gyenge minőségű.
  • A szoftver gyakran nem felelnek meg a szükséges követelményeknek.
  • Projektek rakoncátlan, és nehezen támogató kódot.
  • A szoftver alkalmatlan volt forgalmazás.
(Lásd. Is)

És bár ő (mérnöki megközelítés) kimagasló eredményt számos nagy projektek, szenvedett teljes kudarc a tömeggyártásban szoftver. Miért? Mert ha kibír egy egyértelmű igény, hogy kövesse egy előre meghatározott terv, akkor kiad egy csomó erőfeszítést ellenőrizni kell, és nem veszi észre, hogy a világ megváltozott, és a terv már nem releváns, hogy a végeredmény egyszerűen nem felel meg a gyakorlati követelményeknek a valós világban.

Főbb pontok a mérnöki megközelítés a beszélgetést: megtervezése, kialakítása, követve azt a tervet és a szerződés, a szisztémás (elszámoltathatóság), stb

A legtöbb ember olyan gyakran mondják, a „szoftver” és „hardver”, utalva a hardver és a szoftver a számítógépek, hogy felejtse el az eredeti jelentését. „Soft” azt jelenti, „puha” és „kemény” - „kemény”, „nem változott.” Nem nehéz megérteni, hogy ezek közül bármelyik feltételeket. A kódot kell „puha”, meg kell könnyű megváltoztatni. A hardver része a számítógép, egyszer alakult, változatlan marad. És beszélünk itt nem egy csere meghajtó vagy a memóriát és a állandóság az építészet és utasításkészlet. Emlékezzünk, hogy az első számítógépek programozott hardver: nem voltak programok a tiszta formában voltak varrva egy hardveres - külön kábelezés (vezetékes). Ie körülbelül ugyanaz, mint a fali kapcsoló „programozott” kapcsolja be a lámpákat kikapcsolt helyzetbe „on”.

Amit az imént mondtam?

A programozás, emlékeztetni kell arra, hogy az alapvető, ősi oka a programok, mint olyan, az elszakadás a vas - ez a rugalmasság és a „puhaság”. Ha a kód nem rugalmas, és nem teszi lehetővé, hogy könnyen módosíthatja magát - mit jelent az ő létezése, mint a kód? Rugalmasság - a szent grál szoftver kódját. Itt azonban meg kell helyesen megérteni a „rugalmasság”. Sok (kezdő) programozók nem értik meg. „Nos, én át is nevezheti a változó és adjon meg egy újat. És azt is be egy függvényhívás. Lásd, meg tudom változtatni a kódot, mi baj van?” Rugalmasság utal, hogy a képes alkalmazkodni a változó igényekhez és változó technológia. A rugalmasság olyan dolgokat jelent, mint a csere egy adatbázis motor a másikra, GUI változás CUI (grafikus felhasználói felület a konzol), stb Röviden, egy jó rugalmas kódot kell dolgozni elvont fogalmakat. működnek közös ahelyett kötve egy adott végrehajtás egy adott osztály, stb Ez egyébként az egyik oka a PFSZ, ahol a rugalmasság ( „absztrakt”) épül egészen a szintaxis szintjén (szemben az előző megközelítések, ahol legalább lehetséges, de ehhez különleges erőfeszítés - legalább azért, mert azok az adatok és módszerek kezeléseket nem formálisan kapcsolódnak).

Emlékezz ezt a bejegyzést. Nem volt olyan elem, mint a „teszt”. Tudom, hogy néhány (kezdő) programozók is úgy gondolja, hogy nem kell. Tény, hogy az egység tesztelése kód nagyon hasznos, nem csak a saját tesztelés, hanem azért is, mert a hatása azt a kódot design. Elvégre, ha írsz egy egység teszt, akkor csúszik helyett egy réteg a másik. Ehelyett GUI - rögzített bemeneti és kimeneti helyett adatbázishoz való kapcsolódás - emulálni réteg, stb Más szóval, ha írsz egy tesztet, akkor garantálni egy bizonyos fokú rugalmasság a kódban. Írásban vizsgálat feltárja a rugalmasság hiánya miatt a kódban, így tudjuk javítani. Ez ezen tény alapján közelítik meg a programnak TDD (Test Driven Development - fejlesztés vizsgálata). Ez garantálja a meghatározott minőségi szintet a kódot (a rugalmasság).

A megadott idő (rugalmasság) az oka a megjelenése „agilis” szoftverfejlesztési módszertanok, hogy megpróbálja megfékezni összetettségét fejlesztés: Agile, XP, Scrum, stb Azt is meg kell jegyezni, hogy a „rugalmas” megközelítés nem ellenzik, mérnöki megközelítés abban az értelemben, hogy ők is küzdelmet célzó fenti problémák (meghaladja a költségvetés, stb.)

A fentiek nem kapsz egy nyom, hogy a fejlesztési programok (többnyire) - nem mérnök, és készségek (és ebből következően nem foglalkozik a mérnökök és iparosok). A koncepció a készség nehezen hivatalossá, hogy nem könnyű megérteni. Ez a koncepció fontos szerepet művészeti, vagy akár a kiemelt művészet tudomány. Ez nem jelenti azt, hogy a master elhanyagolja a tudomány vagy a mérnöki szemlélet, de nem jelentős. Ügyességi - ez a mérleg a művészet és a tudomány. Ez a helyes egyensúlyt vezet minőségű kódot.

(Mivel az észrevételek azt kell mondanom, hogy egy sikeres program nem mindig minőségű kódot. A minőség kód nem történik semmilyen utalás egy minőségi program (minőségi programokat a szempontból a felhasználó), ennek semmi köze a siker és a népszerűség nem a garancia . Kiváló minőségű kódot csak garantálja a könnyű fejlesztés, módosítás, helyesbítés és karbantartási programot. nem fogom folytatni ezt a témát itt. Talán akkor írok egy külön bejegyzést rajta, de amíg ő olyan szépen kiderült az én Translation SZAKASZ -. Post arról szoftverkompatibilitási görbék, de a sikeres és a vonatkozó programok, vagyis a minősége a forráskód - ez az előnye a fejlesztő Jóság / népszerűsége / A program sikere -. Ez az előny a felhasználók, és néha ellentmondanak egymásnak) ..

Mérték - a fej mindent.

Például sok ember érti a kifejezést: „nem szükséges használni X”, „X - rossz”, „az X elavult, használja Y” szó. Tény, hogy az ilyen kijelentések csak az, hogy a legtöbb esetben X néhány komoly problémát az általános esetben. És a cikkeket, hogy beszélni, hogy miért X - egy rossz dolog, sőt, azt jelzik, hogy akkor a negatív oldalon és hátrányait X. Gondolj globális változókat. A. goto ( "GOTO károsnak"), és egyéb dolgok. Ez a fajta cikket úgy kell értelmezni, oly módon, hogy azok áttekinteni / tudás hiányosságai X. X itt nem rossz önmagában, hanem csak nagyon speciális körülmények között. Ami azt jelenti, hogy van, mint egy profi ezekben a kérdésekben, képes lesz mérlegelni előnyeit és hátrányait, és válassza ki a megfelelő megoldást. Meg kell használni az X-e vagy sem. Természetesen, mint a hátrányai X olyan jelentősek, hogy szükség, mint egy külön cikket, a legtöbb esetben a választás hajlok „ne használd”. Éppen ezért mindenki azt mondja kifejezéseket, mint „ne használd X”. Mivel így a szakmai és tudja, hogy mikor és mit kell használni. De egy kezdő programozó egy ilyen tudatos és tájékozott választás nem képes megtenni. Ezért jobb, ha azt mondta, hogy hogyan kell csinálni. És ha a „felnőni” - meg fogja érteni. Nos képregények a témában.

Éppen ezért a programozás az első helyen művészet. Nem számít, hogy mennyi könyvet olvas és cikkek oktatás programozás, ahogy lehet tanulni tippeket „erre” / „Ne csináld ezt” - a végső szoftverfejlesztési folyamat jön le, hogy a tapasztalat és tudás. Akkor befektetni egy csomó tudás, hanem hogy te, mintha azt mondaná, hogy nem jelenik meg, „egyfajta helyességét.” Ez arról szól, hogy két ember, aki töltötte az azonos mennyiségű erőfeszítést, és ugyanazzal a készlet összetevők, vagy be őket egy finom sütemény vagy ehetetlen szar. A fejlesztés során mindig van valami az A és B, és egy csomó köztes változatok között. Méltó a fejlesztő teszi a helyes választás e két lehetőség közötti tapasztalataik alapján és az érzések, választott a helyes egyensúlyt. Ha valaki úgy érzi, a fejlesztési folyamat, hogy megragadja a lényegét, a tudás a konkrét technikai részleteket a háttérbe szorul. Ezért egy jó fejlesztő mindig valami tanulmányok (új technológia, módszertan, stb), hogy bővítsék a tapasztalatok és kilátások.

A történet tanulsága? Programozás nem lehet tanítani a középiskolában. Ez - egy művészeti, hogy meg kell tanulni magát.

Ebben az értelemben ez egy post-felül az előző bejegyzést.

Sajnálom, de nem tudtam befejezni olvasás.
tagadás -
programozás szintre csökkent a „mechanikus vágás csavart a gép.”

Számomra ez:
1. ambíciói írásakor programok káros. Hagyja, hogy a szakemberek, akik tanulmányozták. Valódi művészek és tervezők.
2. Ha egy személy nem valami, hogy szükség megbízott rajzok használatával és eszközök létre erre - ez nem kínos. Szégyen, hogy ne, ami jelzi Speke és TK. Mivel ez számított mások kommandós rád. Ezekben a pillanatokban mindannyian lakatos. akkor is, ha ez a saját rajzok.
3. A művészeti formalizált. Először elsajátította az alapvető készségek és megtanulják alkalmazni azokat. A programozás minden naobrot. Mindenki csinál a holocaust prog, akkor bejut managery, olvasni egy pár könyvet, és indítsa el tudják kezelni a technológiai szoftver.

És tartsa a fejét, mint a páva. Bár a fiatal csalók kell húzni, és tépje a füle. Mindenhol van, és a programozás is ritkaság.

Összesen: A programozó kell érteni, hogy ő is részt vesz az ipari vállalkozások. A programozó kell érteni, ahol ő volt a tervező, és hol szerelő Miller. Egyébként úgy halturka.
Az összehasonlítás mazyukanem minták beszéd ne legyen.

Amikor megemészteni az egészet. megvalósítani. Art, amely nem lázadás és a folyamatban. Az alkotó a motor - az alkotója egy újat. Kívánatos. Dolgozik a jó. És ne eltömődnek és bonyolítja a már középszerű szövegei programokat.

P / S - STL - egy rossz példa, hogy mit hozhat a vágy isskusnichat. Sajnos ez volt a szabvány (de nem sokáig). Vannak egyszerű és elegáns eszköz razrobotki. Eszközöket. És hoznak létre spechialno, programozók számunkra. Minket, hogy valami egyszerű, megbízható és kényelmes. Tették ezt együtt, nem külön-külön vágású félkarú szobor

Használhatsz néhány HTML-címkéket, például:

Kérjük, amennyiben lehetséges, használja a „Név / URL” helyett „Anonymous”. URL egyszerűen elhagyható.

Az üzenet lehet a spamek a spam szűrő - ne aggódj, meg fog jelenni az érvényesítés után.

Keresés a blog

Kapcsolódó cikkek