Lešení (programování) - Scaffold (programming)
Lešení, jak se používá ve výpočetní technice, odkazuje na jednu ze dvou technik: První je technika generování kódu související s přístupem k databázi u některých model – pohled – řadič rámce; druhým je technika generování projektů podporovaná různými nástroji.
Generování kódu
Lešení je technika podporovaná některými model – pohled – řadič rámce, ve kterém může programátor určit, jak může být databáze aplikace použita. The překladač nebo framework používá tuto specifikaci, spolu s předdefinovanými šablonami kódu, ke generování konečného kódu, který může aplikace použít vytvářet, číst, aktualizovat a mazat položky databáze, které se šablonami efektivně zachází jakolešení "na kterém lze postavit výkonnější aplikaci.
Scaffolding je evoluce generátorů databázových kódů z dřívějších vývojových prostředí, jako je CASE Generator společnosti Oracle a mnoho dalších 4GL produkty pro vývoj softwaru klient-server.
Lešení si oblíbilo Ruby on Rails rámec. Byl upraven pro další softwarové rámce, včetně Platforma OutSystems, Express Framework, Hrajte rámec, Django, web2py, MonoRail Brail, Symfony, Laravel, CodeIgniter, Yii, CakePHP, Phalcon PHP, Modelové lepidlo, PRADO, Grály, Katalyzátor, Mojolicious, Rámec švu, Spring Roo, JHipster, Dynamická data technologie ASP.NET, KumbiaPHP a ASP.NET MVC Pomocníci šablony metadat rámce.
Run-time vs. design-time scaffolding
Lešení může nastat ve dvou různých fázích životní cyklus programu: návrhový čas a doba běhu. Návrhové časové lešení vytváří soubory kódu, které lze později programátorem upravit tak, aby přizpůsobily způsob použití databáze aplikace. Nicméně pro rozsáhlé aplikace tento přístup může být obtížné udržet kvůli velkému počtu vytvořených souborů a skutečnosti, že design souborů byl do značné míry opraven, když byly generovány nebo kopírovány z původních šablon. Alternativně běhové lešení produkuje kód za běhu. Umožňuje okamžitě promítnout změny designu šablon v celé aplikaci. Ale úprava designu šablon může být v případě běhového lešení obtížnější nebo nepraktičtější.
Lešení v Ruby on Rails
Když linka lešení:jméno modelu
je přidán do a ovladač Rails automaticky vygeneruje všechna příslušná datová rozhraní za běhu. Jelikož je API generováno za chodu, programátor nemůže snadno upravovat takto generovaná rozhraní. Takové jednoduché lešení se často používá prototypování aplikace a zadávání testovacích dat do databáze.
Programátor může také spustit externí příkaz ke generování Ruby kódu pro lešení předem: kolejnice generují lešení jméno modelu
. The generovat
skript vytvoří soubory Ruby kódu, které aplikace může použít k interakci s databází. Je to o něco méně pohodlné než dynamické lešení, ale dává programátorovi flexibilitu úpravy a přizpůsobení vygenerovaných API.
Poznámka: Od verze Rails 2.0 se dynamické lešení již neukládá.
Serverová strana vs. klientská lešení
Techniky lešení založené na aplikační databázi obvykle zahrnují Strana serveru rámce. Webové rámce na straně serveru běžně provádějí operace přímo s položkami databáze a lze u těchto operací uvažovat generování kódu Lešení na straně serveru. Alternativně, Strana klienta vývoj často používá rámce které hrají přenos dat namísto přímého přístupu k databázi. Zaměření Lešení na straně klienta je tedy více na generování startovací šablony pro aplikaci jako celek, spíše než generování kódu pro přístup k databázi.
Některé webové rámce na straně klienta, například Meteor, umožněte klientovi provádět databázové operace podobným způsobem jako na straně serveru. V tomto případě mohou lešení techniky jít nad rámec pouhého generování startovací šablony. Mohou hrát doba běhu lešení webových formulářů na internetu Strana klienta na vytvářet, číst, aktualizovat a mazat položky databáze. Jedním z příkladů je doplněk Meteor nazývá aldeed: autoform [1].
Generování projektu
Složité softwarové projekty často sdílejí určité konvence o struktuře a požadavcích projektu. Například mají často samostatné složky pro zdrojový kód, binární soubory a testy kódu, jakož i soubory obsahující licenční smlouvy, Poznámky k vydání a kontaktní informace. Pro zjednodušení vytváření projektů podle těchto konvencí je mohou nástroje „lešení“ automaticky generovat na začátku každého projektu. Mezi takové nástroje patří Yeoman, Náklad a Ritchie CLI.
Viz také
- Plynový pedál (Produktivita)
- Spring Roo
- Hrajte Framework - Open-source web framework napsaný ve Scale
- Tapiserie Apache
- Symfony
- Laravel - Open source webový aplikační rámec napsaný v PHP
- Phalcon PHP
- Kohana
- Katalyzátor
- Mojolicious
- Dynamická data technologie ASP.NET
- Ruby on Rails - Rámec open source webové aplikace na straně serveru
- Yii - Rámec webových aplikací
- CodeIgniter
- CakePHP - Open-source webový framework v PHP
- MonoRail
- FuelPHP
- Django (webový rámec) - Webový rámec Pythonu
- Platforma OutSystems (PaaS)
- Yeoman
externí odkazy
- Rychlé uvedení do provozu s lešením, Referenční metoda lešení (Z rubyonrails.org)
- Panel nástrojů lešení Rails - GUI pro generátory lešení Rails (Pouze aplikace pro Mac, z Mac App Store)