Što je šablon i zašto ga koristimo? Potrebnost vodiča za stil kodiranja

U informacijskoj tehnologiji, tablica je jedinica za pisanje koja se može iznova koristiti bez promjene. Kao dodatak, ideja se ponekad primjenjuje na programiranje za višekratnu upotrebu, kao u "šifri uzorka".

Pravni ugovori, uključujući softverske i hardverske uvjete, obilno koriste kotlove.

Na primjer, odvjetnik vam može dati na potpisivanje ugovor od pet stranica, ali veći dio ugovora sastoji se od uzorka - što znači da je isti za sve koji taj ugovor dobiju, a tu i tamo promijeni samo nekoliko redaka.

U računalnom programiranju, predloženi broj ili predloženi odnosi na dijelove koda koji moraju biti uključene u mnogim mjestima s malo ili bez izmjena. Često se koristi kada se govori o jezicima koji se smatraju opširnim , tj. Programer mora napisati puno koda da bi radio minimalne zadatke.

Na primjer, u web razvoju jednostavni uzorci za HTML izgledali bi ovako:

Hello world! This is HTML5 Boilerplate.

Cijelo spremište možete pogledati ovdje:

h5bp / html5-bojler

html5-bojlotplate - profesionalni prednji predložak za izgradnju brzih, robusnih i prilagodljivih web aplikacija ili web stranica. github.com

U 1890-ima, bojler je zapravo odliven ili utisnut u metal pripremljen za tiskaru i distribuiran u novinske tiskare i tvrtke širom Sjedinjenih Država. Do pedesetih godina tisuće novina dobivale su i koristile ovu vrstu uzorka od najvećeg nacionalnog dobavljača, Western Newspaper Union. Neke su tvrtke također slale priopćenja za tisak u obliku uzorka, tako da su morala biti tiskana onako kako su napisana.

Većina profesionalnih web programera stvorila je zbirku sredstava i isječke koda koje ponovno koriste na projektima kako bi ubrzali razvoj. Postoje neki univerzalni ili gotovo univerzalni obrasci koji su zajednički svim web mjestima. Umjesto da ih kontinuirano obnavlja, većina programera započinje kopiranjem koda koji je koristio za sličan projekt, a zatim ga započinje mijenjati.

Neki programeri prepoznaju vrijednost ovih predložaka za početnike i odvajaju vrijeme kako bi obrazac učinili generičkim i podijelili ga na mreži kako bi ga drugi mogli koristiti.

To nije ograničeno samo na web razvoj. Koristi se dalje u AI / ML jer ima sve više okvira i knjižnica.

Potrebne karakteristike kotlovske ploče za velike projekte (spremna za proizvodnju)

  • Dobra i čitljiva dokumentacija?
  • Struktura koda s dubljom razinom apstrakcije
  • Slijedi pravilan standard kodiranja
  • Ima CLI alat (za brzo prototipiranje i postavljanje)
  • Skalabilno?
  • Jednostavni alati za testiranje
  • Potrebni API moduli
  • Podrška za internacionalizaciju i lokalizaciju?
  • Podjela koda
  • Kôd poslužitelja i klijenta za postavljanje
  • Ispravna struktura navigacije i usmjeravanja?

Nakon svih ovih minimalnih specifikacija, trebali biste početi uređivati ​​i mijenjati kôd kako biste izradili svoj projekt.

Postoje neke velike tehnološke tvrtke koje čak izrađuju vlastite uzorke. Koriste ga za odgovarajuće i slične projekte tijekom vremena.

Savršen primjer za to bio bi reakcijski.js-ov obrazac:

reagirati-bojler / reagirati-bojler

reakcija-bojler -: vatra: Izuzetno skalabilna, izvanmrežna prva podloga s najboljim iskustvom za programere i fokusom… github.com

Kotlovska ploča za manje projekte (skele)

Ova vrsta kotlovskih ploča obično je vrsta "početnih setova" ili se na profesionalni način naziva "skela". Njihovi glavni ciljni korisnici su programeri početnici ili novi korisnici.

Fokusira se na brzo izradu prototipova stvaranjem elemenata koji su potrebni samo za nove projekte. Oni zahtijevaju manje funkcionalnosti i nisu skalabilni tijekom vremena i projekta.

Njihova struktura koda nije puno proširena i ne uključuje dublji sloj apstrakcije jer korisnici trebaju samo izgraditi temeljne značajke. To eliminira potrebu za dodatnim uslužnim programima.

Najjednostavniji primjer je Facebook-ov obrazac za stvaranje-reagiranje-aplikacije:

facebookincubator / create-reagiraj-app

create-response-app - Stvorite React aplikacije bez konfiguracije gradnje. github.com

Koja je razlika između uzorka i predloška?

Kao što Joachim Pense jasno kaže, uzorak je nešto što kopirate i zalijepite i samo dodate u dokument. Najčešće se javlja u ugovorima u kojima se jezik upotrebljava i ponovno upotrebljava, navodeći stvari poput uvjeta i upozorenja.

Pisci koriste predloške kao modele , ponekad s negativnim učincima. U širem smislu, predložak je model ili uzorak koji se koristi za stvaranje novih objekata. U pisanom obliku to je standardizirani oblik nečega poput životopisa koji pisci mogu koristiti za doradu vlastitih verzija.

Za razliku od bojlera, predlošci su prilagođeni za određenu upotrebu. Problem mi je nastao kad su studenti koristili Word predloške za svoje životopise i svi su na kraju izgledali isto.

Predlošci i predlošci mogu poslovno pisanje učiniti umjerenim i umjetnim ako se nerazumno koriste.

Vodič za stil za pisanje koda

Bez obzira na to upotrebljavate li tablu ili ne, postoje neke norme koje tvrtke slijede za pisanje koda. Jedan od njih je Vodič za stil. Pokušava objasniti osnovne stilove i obrasce koji se koriste u raznim tvrtkama ili organizacijama. Općenito je pravilo da zaposlenici moraju usvojiti vodič za stil kodiranja svoje tvrtke.

Vodič za stil opisuje mnoštvo pravila za pisanje koda, poput uvlačenja kartica i razmaka, imenovanja varijabli i funkcija, pisanja potrebnih komentara, formatiranja, struktura izvornih datoteka, korištenjem odgovarajuće metode struktura podataka, izbjegavanje podizanja, opsega, kontrolnih izjava i puno više.

Stilovi programiranja obično se bave vizualnim izgledom izvornog koda s ciljem čitljivosti. Odavno je dostupan softver koji automatski formatira izvorni kod, ostavljajući kodere da se koncentriraju na imenovanje, logiku i više tehnike.

Kao praktična točka, korištenje računala za formatiranje izvornog koda štedi vrijeme, a moguće je zatim bez rasprava provoditi standarde u cijeloj tvrtki. (Izvor - Wiki).

Ovo su neke uobičajene rasprave poput: Tabs v Spaces Sveti rat , odabir savršenog IDE-a koda i tako dalje. Zanimljivo je da se možete uključiti u ove rasprave koje se uglavnom događaju na Redditu . Također možete sudjelovati u nekim pitanjima i odgovorima o stackoverflowu .

Za web programere najčešći stilski vodič za JS je Airbnbov javascript stil vodič. Otvoreni je izvor i svi mogu dati svoj doprinos.

airbnb / javascript

javascript - Vodič za stil JavaScript-a github.com

Ako netko sumnja u to zašto Javascriptu treba stil vodič, pročitajte drugi odgovor ovog broja Harrisona Shoffa, programera u Airbnb-u .

Zašto JavaScript treba vodič kroz stil? · Broj # 102 · airbnb / javascript

Jedan od mojih najdražih dijelova o JavaScript zajednici je taj što ga ljudi odlučuju napisati na toliko različitih načina ... github.com

Evo nekoliko stilskih vodiča za neke od danas popularnijih jezika:

DotNet kod za oblikovanje koda

Java: Google-Java-format

Javascript standardni stil (različit je od airbnb-ovog javascripta)

Ispravci standarda PHP kodiranja r

Python: Googleov YAPF

Ruby: Rubocop

Više od Boilerplate: Koncept za OOP

U objektno orijentiranim programima klase često imaju metode za dobivanje i postavljanje varijabli instance. Definicije ovih metoda često se mogu smatrati uzorcima.

Iako će se kod razlikovati od klase do klase, u strukturi je dovoljno stereotipan da bi ga bilo bolje generirati automatski nego pisati rukom.

Na primjer, u sljedećoj Java klasi koja predstavlja kućnog ljubimca, gotovo je sav kod šifra, osim deklaracija o ljubimcu , imenu i vlasniku :

public class Pet { private String name; private Person owner;
public Pet(String name, Person owner) { this.name = name; this.owner = owner; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public Person getOwner() { return owner; }
public void setOwner(Person owner) { this.owner = owner; }}

Definicija tablice danas postaje globalnija u mnogim drugim programskim jezicima. Dolazi iz OOP-a i hibridnih jezika koji su nekada bili proceduralni, ali su postali OOP. Oni sada imaju isti cilj ponoviti kôd koji izgradite s modelom / predloškom / klasom / objektom, pa usvajaju ovaj izraz. Izrađujete predložak, a jedino što radite za svaki primjerak predloška su pojedinačni parametri.

Ovaj dio nazivamo kotlovnicom. Jednostavno ponovno upotrebljavate kôd od kojeg ste napravili predložak, ali s različitim parametrima.

Boilerplate kao API

Budući da jednostavno ponovno upotrebljavate kod predloška s različitim parametrima, to podrazumijeva da bismo mogli izraditi API-je za višekratnu upotrebu kojima je potrebna samo promjena ulaza i izlaza.

Zaključak

"Boilerplate code" je svaki naizgled ponavljajući kôd koji se pojavljuje iznova i iznova kako bi se dobio rezultat koji izgleda kao da bi trebao biti puno jednostavniji.

Ovaj sam članak napisao jer mi je voditelj tima nedavno naložio da naučim o mnogim vrstama pločica koje mogu odgovarati našem projektu. Zato sam morao krenuti u potragu za savršenim kotlom.

Svaka vrsta povratnih informacija bit će nam zahvalna! Hustle On!