připravte vývojové prostředí

první věc nejprve nastavte vývojové prostředí. Stále si pamatuji, když začnu svou cestu vývoje, nejbolestivější období bylo nastaveno vývojové prostředí, speciální jako tento druh projektu (více než 3 systémy), musíme stáhnout různé služby (jar, binární atd.), aby se to otevřít běží lokálně, ale díky za kontejnerové technologie, pomocí jednoduchého docker-compose.YML soubor, můžeme bootstrap všechny klíčové aplikace / komponenty, které jsme potřebovali.

vidíš, jak je to jednoduché?

vývoj / kódování

začněme zábavnou část, Go je můj nedávný premiérový vývojový jazyk, ale proč jsem se rozhodl jít na vývoj datového potrubí, protože jeho jednoduchost, výkony a typ bezpečné. Tady nebudu vysvětlovat přínos Go, pokud máte zájem, zkontrolujte prosím Golang.org.

jako obvykle, pokud zkontrolujete můj předchozí příspěvek

jak vytvořit MachineBox.io API se 100% jednotkovým testovacím pokrytím pomocí Go

budete vědět, že budu používat stejnou strukturu aplikace.

1. Vytvořte připojení vytvořením struktury Env

2. Pomocí rozhraní

můžete být obeznámeni s používáním rozhraní z práce přes průchod Go nebo z oficiální dokumentace. Krása použití rozhraní V Go je však, že můžete definovat sadu metod, které musí typ (často struct) definovat, aby byl považován za implementaci tohoto rozhraní.

když některý daný typ implementuje všechny metody tohoto rozhraní, kompilátor Go automaticky ví, že je povoleno použít jako tento typ.

3. Protokolování

protokolování je těžké!

pokud jste již pracovali jako relativní funkce podpory výroby aplikací. Oceníte vývojáře, který zaznamenává informace o tom, jak aplikace běží, kdy a jak tato aplikace selhala, který soubor, která funkce. (Plus+)

protokolování příklad

používám Uber Zap libs. A také zabalím do pomocníka, který lze použít v různých projektech na různé úrovni. Pro mě, dávám přednost návratu dolní páka chyba na hlavní implementaci.

implementace protokolování

4. Unit Test

psaní unit testy mohou zajistit náš kód pracuje podle očekávání, je mnohem méně „drahé“, než v případě, že chyba nebo regrese dělá to celou cestu k vydání.

pokud si stále pamatujete implementaci rozhraní #1 a další výhodou implementace rozhraní je, že vám pomůže snadno napsat testovatelný kód.

příklad jeden z testování jednotek

pokrytí testem jednotek je zájem o předmět, používám dost blázen, abych sledoval 100% pokrytí, nicméně se učím své lekce, nejdůležitější o testu jednotky je:

jak jste si jisti svým kódem a ujistěte se, že automatizace CI / CD zachycuje co nejvíce regresní chyby na úrovni kódování.

go test-cover

konečný výsledek

konečný výsledek-gif

fáze podpory

toto potrubí je postaveno pouze o víkendu, řekněme, 10 hodin celkového návrhu, vývoje/kódování. Kvůli pokrytí testování jednotek, protokolování a testu místní integrace. Jsem si docela jistý, že je připravena na výrobu, nicméně…

Fáze zlepšení

jediné, co zde chybí, je implementace zabezpečení, úroveň prostředí a úroveň kódu. to je nejdůležitější část, pokud chcete odeslat do výroby.

tento článek se většinou zaměřuje na návrh a sestavení. Další příspěvek se více zaměří na podporu a zlepšení. 🙂

Část 2:

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.