The document summarizes the origins and history of Google Doodles. It explains that the first Google Doodle in 1999 featured a stick figure behind the second "o" in Google to announce the founders' attendance at a festival. This started the tradition of decorating the Google logo to mark holidays and events. In 2000, Google employee Dennis Hwang was asked to create the first official Google Doodle for Bastille Day, becoming the company's official doodler. Google Doodles now mark a wide variety of holidays, anniversaries, and events around the world.
Teks menjelaskan tentang tiga zona utama pertumbuhan primer pada akar, yaitu zona pembelahan sel, zona pemanjangan, dan zona pematangan. Zona pembelahan sel meliputi meristem apikal yang menghasilkan sel-sel baru untuk pertumbuhan akar. Selanjutnya terdapat zona pemanjangan dimana sel-sel memanjang hingga sepuluh kali panjang semula, dan zona pematangan dimana sel-sel menjadi dewasa secara fungsional. Ket
The document summarizes the origins and history of Google Doodles. It explains that the first Google Doodle in 1999 featured a stick figure behind the second "o" in Google to announce the founders' attendance at a festival. This started the tradition of decorating the Google logo to mark holidays and events. In 2000, Google employee Dennis Hwang was asked to create the first official Google Doodle for Bastille Day, becoming the company's official doodler. Google Doodles now mark a wide variety of holidays, anniversaries, and events around the world.
Teks menjelaskan tentang tiga zona utama pertumbuhan primer pada akar, yaitu zona pembelahan sel, zona pemanjangan, dan zona pematangan. Zona pembelahan sel meliputi meristem apikal yang menghasilkan sel-sel baru untuk pertumbuhan akar. Selanjutnya terdapat zona pemanjangan dimana sel-sel memanjang hingga sepuluh kali panjang semula, dan zona pematangan dimana sel-sel menjadi dewasa secara fungsional. Ket
A retórica surgiu na Grécia antiga em Siracusa no século V a.C. como forma de preparar cidadãos para reivindicar suas terras e propriedades após uma revolta democrática. Dois dos primeiros e mais importantes retóricos foram Corax e seu pupilo Tísias. Posteriormente, Platão e Aristóteles refinaram a teoria retórica, com Aristóteles definindo três modos de persuasão: ethos, logos e pathos.
El software libre es genial y permite a las personas usar, copiar, estudiar, modificar y distribuir el software libremente. El software libre promueve la colaboración y el intercambio de conocimientos entre programadores y usuarios. El movimiento del software libre defiende que los usuarios tengan libertad para controlar el software que usan.
O documento resume a história da química desde os primórdios até a química moderna, abordando os principais conceitos e descobertas ao longo do tempo, como:
1) Os primeiros conhecimentos químicos surgiram na pré-história com a descoberta do fogo e foram se desenvolvendo ao longo da antiguidade.
2) Na Idade Média, surgiu a alquimia, visando a pedra filosofal e o elixir da longa vida.
3) A química moderna emer
Dokumen tersebut memberikan permainan untuk mengajari siswa tentang pecahan. Tujuan permainan ini adalah untuk menumbukkan minat siswa dalam mempelajari pecahan, menghilangkan kejenuhan, dan mempercepat pemahaman siswa tentang nilai pecahan. Permainan ini melibatkan memilih pecahan yang nilainya lebih besar dari pecahan yang diberikan, dengan memperhatikan apakah pecahan tersebut biasa, desimal, atau persen.
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help alleviate symptoms of mental illness and boost overall mental well-being.
Дебатът между Айнщайн и Бор по основите на квантовата механикаVasil Penchev
EINSTEIN-BOHR'S DEBATE ABOUTE THE BASE OF QUANTUM MECHANICS
The dispute is insoluble – The letters between Born and Einstein – “The Good Old Man” and the “dice” – The boundary between “The Good Old Man” and human beings – The viewpoints of Einstein and Bohr and their exchange – The idea of “dualistic Pythagoreanism” – The phenomena of entanglement – Quantum information − On the 70-th anniversary of Einstein – “Incompleteness” of quantum mechanics?
Спорът е неразрешим – Писмата между Борн и Айнщайн – „Добрият старец” и „за-ровете” – Границата между „Добрия старец” и човека – Позициите на Айнщайн и Бор и тяхната размяна – Идея за „дуалистично питагорейство” – Явленията на сдвояване – Квантовата информация – По повод 70-та годишнина на Айнщайн – „Непълнотата” на квантовата механика?
Este documento propone el diseño y fabricación de piezas para motores vehiculares en la ciudad de Cúcuta para satisfacer la alta demanda y facilitar la adquisición de repuestos. El objetivo es ser líderes en este sector mediante el diseño y producción de piezas siguiendo normas técnicas. Esto generaría empleos y desarrollo económico. El proyecto tendría tres fases: preparatoria de 1-2 meses, implementación de 2-3 meses para la maquinaria y personal, y la fase final de apertura al públic
El documento habla sobre tres temas principales: 1) Un editorial que propone un apagón el 12 de diciembre a las 12 para que la telefonía celular sea considerada un servicio público y así regular mejor los precios; 2) Que la "canasta ADEUCO" aumentó 2.4% en noviembre en San Luis; 3) Que el Congreso sancionó una ley celiaca para etiquetar productos libres de gluten.
El documento expresa la determinación de continuar creyendo en la esperanza, amor y paz a pesar de la desesperanza, odio y guerra que otros puedan sembrar. Afirma que seguirá construyendo, hablando de paz e iluminando aunque otros destruyan u oculten la verdad. Insta a seguir esparciendo alegría donde haya tristeza e invitar a caminar a quien se haya rendido, porque siempre habrá niños y la naturaleza que nos recuerden la belleza en la vida.
God creates the heavens, earth, and everything in them. On the sixth day, God creates humans from dust and breathes life into them. God places the first man, Adam, in the Garden of Eden to work it and take care of it. God commands Adam not to eat from the tree of knowledge of good and evil. God creates Eve from Adam's rib to be his companion. Adam and Eve, naked and unashamed, live together in the garden.
Este documento describe las funciones y estrategias de gestión de un área de apoyo a la inclusión educativa. Sus principales objetivos son promover la permanencia de estudiantes en riesgo en la escuela a través de estrategias flexibles e innovadoras de inclusión, coordinación interna y externa, y derivación a servicios especializados cuando sea necesario.
The document is comprised of the date "19/01/11" repeated multiple times without any other context or information provided. As such, there is no high level or essential information that can be summarized from the given document in 3 sentences or less.
Este documento describe el proceso de diseño y fabricación de un chasis de motocicleta. Explica que los chasis se diseñan actualmente usando programas CAD y de elementos finitos para predecir su comportamiento bajo cargas. El diseño busca optimizar la rigidez y peso del chasis. Tras el diseño asistido por computadora, el chasis puede fabricarse en una sola pieza mediante fundición o inyección para mejorar las prestaciones y reducir soldaduras. Finalmente, los primeros prototipos se prueban para verificar los cálculos de comportamiento
1. O documento discute o conceito de progressão aritmética, definindo-a como uma sequência numérica na qual a diferença entre cada termo e o anterior é constante.
2. Apresenta a fórmula para calcular qualquer termo de uma progressão aritmética a partir do primeiro termo e da razão.
3. Fornece exemplos e propriedades das progressões aritméticas, incluindo como representar graficamente a relação entre os termos.
Technologie ASP.NET MVC je rozšiřitelnější než se na první pohled může zdát!
Pokročilejší přednáška pro ty, kteří už ASP.NET MVC někdy viděli, ukazuje, jak jednoduše upravit vestavěné routování, volání akčních metod, vyhledávání views, model binding, filtry...
Na praktických příkladech bude ukázáno, jak využitím této rozšiřitelnosti dosáhnout elegantnějšího a čistšího kódu.
Dema a videozáznam: http://wug.cz/praha/akce/595-Rozsiritelnost-ASP-NET-MVC
Technologie ASP.NET MVC je rozšiřitelnější než se na první pohled může zdát! Pokročilejší přednáška pro ty, kteří už ASP.NET MVC někdy viděli, ukazuje, jak jednoduše upravit vestavěné routování, volání akčních metod, vyhledávání views, model binding, filtry... Na praktických příkladech bude ukázáno, jak využitím této rozšiřitelnosti dosáhnout elegantnějšího a čistšího kódu.
A retórica surgiu na Grécia antiga em Siracusa no século V a.C. como forma de preparar cidadãos para reivindicar suas terras e propriedades após uma revolta democrática. Dois dos primeiros e mais importantes retóricos foram Corax e seu pupilo Tísias. Posteriormente, Platão e Aristóteles refinaram a teoria retórica, com Aristóteles definindo três modos de persuasão: ethos, logos e pathos.
El software libre es genial y permite a las personas usar, copiar, estudiar, modificar y distribuir el software libremente. El software libre promueve la colaboración y el intercambio de conocimientos entre programadores y usuarios. El movimiento del software libre defiende que los usuarios tengan libertad para controlar el software que usan.
O documento resume a história da química desde os primórdios até a química moderna, abordando os principais conceitos e descobertas ao longo do tempo, como:
1) Os primeiros conhecimentos químicos surgiram na pré-história com a descoberta do fogo e foram se desenvolvendo ao longo da antiguidade.
2) Na Idade Média, surgiu a alquimia, visando a pedra filosofal e o elixir da longa vida.
3) A química moderna emer
Dokumen tersebut memberikan permainan untuk mengajari siswa tentang pecahan. Tujuan permainan ini adalah untuk menumbukkan minat siswa dalam mempelajari pecahan, menghilangkan kejenuhan, dan mempercepat pemahaman siswa tentang nilai pecahan. Permainan ini melibatkan memilih pecahan yang nilainya lebih besar dari pecahan yang diberikan, dengan memperhatikan apakah pecahan tersebut biasa, desimal, atau persen.
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help alleviate symptoms of mental illness and boost overall mental well-being.
Дебатът между Айнщайн и Бор по основите на квантовата механикаVasil Penchev
EINSTEIN-BOHR'S DEBATE ABOUTE THE BASE OF QUANTUM MECHANICS
The dispute is insoluble – The letters between Born and Einstein – “The Good Old Man” and the “dice” – The boundary between “The Good Old Man” and human beings – The viewpoints of Einstein and Bohr and their exchange – The idea of “dualistic Pythagoreanism” – The phenomena of entanglement – Quantum information − On the 70-th anniversary of Einstein – “Incompleteness” of quantum mechanics?
Спорът е неразрешим – Писмата между Борн и Айнщайн – „Добрият старец” и „за-ровете” – Границата между „Добрия старец” и човека – Позициите на Айнщайн и Бор и тяхната размяна – Идея за „дуалистично питагорейство” – Явленията на сдвояване – Квантовата информация – По повод 70-та годишнина на Айнщайн – „Непълнотата” на квантовата механика?
Este documento propone el diseño y fabricación de piezas para motores vehiculares en la ciudad de Cúcuta para satisfacer la alta demanda y facilitar la adquisición de repuestos. El objetivo es ser líderes en este sector mediante el diseño y producción de piezas siguiendo normas técnicas. Esto generaría empleos y desarrollo económico. El proyecto tendría tres fases: preparatoria de 1-2 meses, implementación de 2-3 meses para la maquinaria y personal, y la fase final de apertura al públic
El documento habla sobre tres temas principales: 1) Un editorial que propone un apagón el 12 de diciembre a las 12 para que la telefonía celular sea considerada un servicio público y así regular mejor los precios; 2) Que la "canasta ADEUCO" aumentó 2.4% en noviembre en San Luis; 3) Que el Congreso sancionó una ley celiaca para etiquetar productos libres de gluten.
El documento expresa la determinación de continuar creyendo en la esperanza, amor y paz a pesar de la desesperanza, odio y guerra que otros puedan sembrar. Afirma que seguirá construyendo, hablando de paz e iluminando aunque otros destruyan u oculten la verdad. Insta a seguir esparciendo alegría donde haya tristeza e invitar a caminar a quien se haya rendido, porque siempre habrá niños y la naturaleza que nos recuerden la belleza en la vida.
God creates the heavens, earth, and everything in them. On the sixth day, God creates humans from dust and breathes life into them. God places the first man, Adam, in the Garden of Eden to work it and take care of it. God commands Adam not to eat from the tree of knowledge of good and evil. God creates Eve from Adam's rib to be his companion. Adam and Eve, naked and unashamed, live together in the garden.
Este documento describe las funciones y estrategias de gestión de un área de apoyo a la inclusión educativa. Sus principales objetivos son promover la permanencia de estudiantes en riesgo en la escuela a través de estrategias flexibles e innovadoras de inclusión, coordinación interna y externa, y derivación a servicios especializados cuando sea necesario.
The document is comprised of the date "19/01/11" repeated multiple times without any other context or information provided. As such, there is no high level or essential information that can be summarized from the given document in 3 sentences or less.
Este documento describe el proceso de diseño y fabricación de un chasis de motocicleta. Explica que los chasis se diseñan actualmente usando programas CAD y de elementos finitos para predecir su comportamiento bajo cargas. El diseño busca optimizar la rigidez y peso del chasis. Tras el diseño asistido por computadora, el chasis puede fabricarse en una sola pieza mediante fundición o inyección para mejorar las prestaciones y reducir soldaduras. Finalmente, los primeros prototipos se prueban para verificar los cálculos de comportamiento
1. O documento discute o conceito de progressão aritmética, definindo-a como uma sequência numérica na qual a diferença entre cada termo e o anterior é constante.
2. Apresenta a fórmula para calcular qualquer termo de uma progressão aritmética a partir do primeiro termo e da razão.
3. Fornece exemplos e propriedades das progressões aritméticas, incluindo como representar graficamente a relação entre os termos.
Technologie ASP.NET MVC je rozšiřitelnější než se na první pohled může zdát!
Pokročilejší přednáška pro ty, kteří už ASP.NET MVC někdy viděli, ukazuje, jak jednoduše upravit vestavěné routování, volání akčních metod, vyhledávání views, model binding, filtry...
Na praktických příkladech bude ukázáno, jak využitím této rozšiřitelnosti dosáhnout elegantnějšího a čistšího kódu.
Dema a videozáznam: http://wug.cz/praha/akce/595-Rozsiritelnost-ASP-NET-MVC
Technologie ASP.NET MVC je rozšiřitelnější než se na první pohled může zdát! Pokročilejší přednáška pro ty, kteří už ASP.NET MVC někdy viděli, ukazuje, jak jednoduše upravit vestavěné routování, volání akčních metod, vyhledávání views, model binding, filtry... Na praktických příkladech bude ukázáno, jak využitím této rozšiřitelnosti dosáhnout elegantnějšího a čistšího kódu.
Technologie užívané při vývoji velkých e-shopůPeckaDesign.cz
Aby e-shop dokázal obsloužit stovky nebo tisíce požadavků za minutu, musí jeho programátoři vědět, co dělají. Nevystačí si jen se základními znalostmi PHP a MySQL, ale je potřeba využít širší portfolio technologií a technik, které mu zaručí jak dostatečný výkon, tak efektivitu řešení. Představím vám náš technologický stack, díky kterému jsme na špici." - Milan Pála
2. MoroSystems, s.r.o.
•
Pobočky Brno a Hradec Králové
•
Firma s českými vlastníky
•
26 zaměstnanců a externistů
•
Na trhu od roku 2005
3. MoroSystems, s.r.o.
•
Odborný weblog VsadNaJavu.cz
•
Zakázkový vývoj webových aplikací,
informačních systémů a portálových řešení
•
Outsourcing vývoje SW nad Java/J2EE
•
Implementace a customizace Atlassian JIRA
•
Internetový startup Hráči.info
4. Obsah
Porovnání s jinými frameworky
Komponenty
Modely
Podpora JavaScriptu a Ajaxu
Jak vytvořit RIA
6. Principy webových frameworků
MVC Klientský fw Komponentový fw
Struts, Spring MVC... Flex, GWT JSF, Tapestry, Wicket
Server: celá aplikace Server: REST API Server: celá aplikace
Klient: statické HTML Klient: celá aplikace Klient: statické HTML
Stav v URL Stav na klientu Stav v komponentách
Internet Intranet Intranet
Velká zatěž Velká zatěž Střední zatěž
7. Principy frameworků vs. AJAX
MVC
Implementace AJAXu jde proti principu MVC. Musíme implementovat
vykreslení celé stránky a vykreslení fragmentu stránky zvlášť. Vzniká
duplicita kódů...
Klientský fw
Klient stáhne data přes REST API = základní vlastnost frameworku.
Komponentový fw
Komponenty „žijí“ na serveru – můžeme je požádat o vykreslení do
AJAXové odpovědi – dojde k aktualizaci fragmentu HTML stránky.
Pokud fw podporuje AJAX, je jeho použití snadné.
8. Umí tohle váš framework?
● pracuje s POJO daty
● lze využít generické datové typy
● šablony editovatelné v běžném HTML editoru
● oddělení kódu a šablon
● snadné použití JavaScriptu/AJAXu
● „hezké“ URL, tlačítko Zpět
● podpora pro clustering
● testovatelnost pomocí jednotkových testů
9. ...tak trochu jako Swing...
● Anonymní třídy
● Model oddělený od komponenty
● Dědičnost
● Kompozice komponent
● (Generické datové typy)
11. Component
WebComponent
Hierarchie Label Image
komponent WebMarkupContainer
Link
Border Form
Panel FormComponent
TreeGrid Button
DataGrid CheckBox
TabbedPanel FileUpload
Další komponenty viz též
http://wicket.sourceforge.net/wicket-extensions/ TextField
14. Je to znovupoužitelná komponta,
Ukázka kódu vzniklá jako kompozice komponent
public class AddressPanel extends Panel {
private static final long serialVersionUID = 1L;
public AddressFragmentPanel(String id, IModel<Address> model) {
super(id, new CompoundPropertyModel<Address>(model));
add(new TextField<String>("name").setRequired(true));
add(new TextField<String>("street")); Název komponenty odpovídá
add(new TextField<String>("city").add(new IValidator(){ názvu atributu modelu
public void validate(IValidatable<T> validatable){
String city = (String)getDefaultModelObject();
if (city == null || city.length()<2) {
ValidationError error = new ValidationError();
error.setMessage("Bad city name");
validatable.error(error); Anonymní třída není problém
}
}
});
add(new CountryDropDown("country"));
}
}
15. IBehavior – modifikace komponenty
public interface IBehavior {
void beforeRender(Component component);
void afterRender(Component component);
void onComponentTag(Component comp,ComponentTag tag);
boolean isEnabled(Component component);
…a několik dalších metod...
}
Dědičnost komponent umožňuje totéž,
ale IBehavior je často elegantnější...
16. IBehavior – ukázka
public class Highlighter extends AbstractBehavior {
@Override
public void onComponentTag(Component comp,ComponentTag tag) {
if (isHighlighted(component)) {
tag.getAttributes().put("class","hglt");
}
}
private boolean isHighlighted(component){
// TODO: implement it
}
}
17. IVisitor
public class HighlighterUtils {
public static void prepareForms(MarkupContainer parent) {
parent.visitChildren(FormComponent.class,
new IVisitor<FormComponent>(){
public Object component(FormComponent comp){
comp.add(new Highlighter());
return IVisitor.CONTINUE_TRAVERSAL;
}
});
}
}
- IBehavior lze opakovaně využít
- jedna komponenta může mít více IBehavior
18. Spring Dependency Injection
public class MyComponent extends Component{
@SpringBean
ProductDAO productDAO;
...
}
public class MyApplication extends WebApplication {
public void init() {
super.init();
addComponentInstantiationListener(
new SpringComponentInjector(this));
}
<dependency>
} <groupId>org.apache.wicket</groupId>
<artifactId>wicket-spring</artifactId>
<version>${wicket.version}</version>
</dependency>
20. Model
public interface IModel<T> extends IDetachable{
T getObject();
void setObject(final T object);
}
Pro srovnání:
Model v MVC = mapa objektů
Model ve Swingu = ad hoc interface dle komponenty
21. Některé modely Wicketu
AbstractReadOnlyModel – jen pro čtení
ResourceModel – lokalizace textů
CompoundPropertyModel – jméno atributu=jméno
komponenty
IChainingModel – zřetězení modelů
LoadableDetachableModel – odpojení
neserializovatelných objektů
22. Triviální model
Tato implementace je součástí Wicketu:
public class Model<T extends Serializable> implements IModel<T> {
private static final long serialVersionUID = 1L;
private T object;
public T getObject() {
return object;
}
public void setObject(final T object) {
this.object = object;
}
}
ALE:
Model musí být serializovatelný – entity serializované být nesmí
(ukládají se pouze do databáze, ne kamsi na disk/síť/cache...)
Jak zajístíme vzájemnou aktualizaci dat v modelech více komponent?
Jak zajistíme aktualizaci dat při změně v dB?
23. „Počítaný“ model
public class CurrentTimeModel extends
AbstractReadOnlyModel<String> {
public String getObject() {
SimpleDateFormat fmt=new SimpleDateFormat("d.M. hh:mm");
return fmt.format(new Date());
}
}
Volat metodu je často výhodnější, než uchovávat datový obsah.
Můžeme takto rovnou volat DAO...
24. Model napojený na DAO
public class OrderListModel extends AbstractReadOnlyModel<List<Order>> {
@SpringBean transient OrderDAO dao;
public LoggedUserModel(){
InjectorHolder.getInjector().inject(this); Metoda vrátí
} vždy čerstvá data
public List<Order> getObject() {
return dao.getLoggedUserOrders();
}
private void readObject(java.io.ObjectInputStream in)
throws IOException, ClassNotFoundException {
in.defaultReadObject();
InjectorHolder.getInjector().inject(this);
}
}
26. JavaScript v komponentě
public class HTMLEditor extends TextArea<String>{
@Override
protected void onAfterRender() {
super.onAfterRender();
getResponse().write(JavascriptUtils.SCRIPT_OPEN_TAG);
getResponse().write("makeTinyMCE('" + getMarkupId() + "');");
getResponse().write(JavascriptUtils.SCRIPT_CLOSE_TAG);
}
}
Upozornění: toto je jen ilustrační příklad...
27. Aktualizace komponenty AJAXem
Label clockLabel=new Label("clock", new AbstractReadOnlyModel<String>() {
private static final long serialVersionUID = 1L;
public String getObject() {
SimpleDateFormat fmt=new SimpleDateFormat("d.M. hh:mm:ss");
return fmt.format(new Date());
}
};
požadavek vznikl na klientu,
add(clockLabel);
ale o tom, co se bude dít,
add(new AjaxLink<Void>("refresh") { rozhodne server.
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
target.addComponent(clockLabel);
target.addJavascript("window.defaultStatus='"
+Runtime.getRuntime().freeMemory()+"'");
}
};
29. Rich Internet Application
Aplikace běží v prohlížeči a na webovém serveru
(=nulové náklady na instalaci na klientech)
Napodobuje GUI klient-server aplikace
● ovládání: drag&drop, kontextové menu, ukládání stavu
GUI mezi sezeními...
● pokročilé komponenty: datový grid, pulldown menu,
autocomplete...
● složitý, často dynamický, layout aplikace
Jak na to? Wicket na serveru a JS komponenty na klientu.
30. Unobtrusive javascript
Nevtíravý javascript
● chceme, aby javascript byl „přidanou
hodnotou“ a aplikace fungovala i bez něj
● je to best practice pro klasické webové stránky
● užitečný koncept pro napojení serverového
komponentového frameworku a klientských
javascriptových komponent
31. Unobtrusive javascript - ukázka
HTML JS
<div id="tabs"> var tabview = new Y.TabView({srcNode:'#tabs'});
<ul> tabview.render();
<li><a href="#foo">foo</a></li>
<li><a href="#bar">bar</a></li>
<li><a href="#baz">baz</a></li>
</ul>
<div>
<div id="foo">
<p>foo content</p>
</div>
<div id="bar">
<p>bar content</p>
</div> Toto je ukázkový kód ze stránek YUI3.
<div id="baz">
<p>baz content</p>
</div>
</div>
</div>
32. Porovnání jQuery a YUI
jQuery
– populární a známý v ČR
– krátké, čitelné, elegatní kódy
Komponenty v jQuery od různých autorů
– rozdílné API, rozdílné licence, nejednotná grafika
YUI
– používají též velké firmy (eBay, Yahoo)
– „nudné“ API
Komponenty v YUI jsou součástí fw
– podobné API, stejná grafika