What Is Refactoring?
|
|
- Antoni Ciesielski
- 8 lat temu
- Przeglądów:
Transkrypt
1 What Is Refactoring? Definition: The process of changing software in a way that the external behavior is not altered but the internal structure is improved. Or, an instance of such a change. (E.g. I carried out a refactoring. ) Cleaning up code. Improving design. But after the code works. Fights against software entropy Refactoring - 1
2 Why Refactor? Continuous improvement of design Tidying up. Avoids decay. Needed if make it work is first priority Best design choices may not evident at first Makes software easier to understand Refactoring done to clean up hacks Done after reflection. May be done to remove ambiguity, misleading code, a hack, etc. If you can change it successfully, you understand it Refactoring - 2
3 Why Refactor? (2) Helps you find bugs A change to improve structure may reveal a flaw in old implementation Helps you developing working code more quickly Counter-intuitive! Short cycles of add-functionality then improve-design. (Kent Beck s two hats idea). Refactoring - 3
4 But Hold On Possible objections. Touching the design is asking for trouble! Once it s working, why bother? After I think it s working, don t I have to reverify the design changes again? What we need to make refactoring successful is Unit tests Refactoring - 4
5 Unit Testing in TDD Motto: Clean code that works. (Ron Jeffries) Unit testing has broader goals that just insuring quality Improve developers lives (coping, confidence) Support design flexibility and change Allow iterative development with working code early Refactoring - 5
6 Unit Testing Benefits Developers can work in a predictable way of developing code Programmers write their own unit tests Get rapid response for testing small changes Build many highly-cohesive looselycoupled modules to make unit testing easier Refactoring - 6
7 Red/Green/Refactor The TDD mantra of how to code: Red: write a little test that doesn t work, perhaps even doesn t compile Green: Write code to make the test work quickly (perhaps not the best code) Refactor: Eliminate duplication and other problems that you did to just make the test work Refactoring - 7
8 When Should Refactor? Remember: afterwards! (After what?) The Rule of Three First, just do it. Second time, do it badly but tolerate it. Third time, do it well: refactor. Some guidelines: When you need to add a function. Existing design makes this hard. Improve it. When you need to fix a bug. As part of a code review. Refactoring - 8
9 Refactoring and Design Smells Fowler, design smells, and catalog of refactorings The book List of smells on the web: Refactorings Refactoring - 9
10 Tool Support for Refactoring Refactorings: standard re-structurings to solve common problems Can do them by hand Put might be tricky IDEs and separate tools support this IntelliJ, ReSharper, JRefactory, C# Refactory Eclipse, JBuilder, next release of Visual Studio Refactoring - 10
11 Why tools? Ponder these: In Java, you decide to change a class s name. What needs to changed? In Java, you want to change the name of a method. What needs to be changed? Refactoring - 11
12 Java Refactorings in Eclipse Renaming resources classes, methods, fields moving to another package inner and anonymous classes Class hierarchy modifications includes make an interface from a class Code level mods make a code segment a function Refactoring - 12
13 Refactoring JDT has actions for refactoring Java code Refactoring - 13
14 Refactoring Refactoring actions rewrite source code Within a single Java source file Across multiple interrelated Java source files Refactoring actions preserve program semantics Does not alter what program does Just affects the way it does it Refactoring - 14
15 Refactoring Full preview of all ensuing code changes Programmer can veto individual changes List of changes before vs. after Refactoring - 15
16 Refactoring JDT has actions for refactoring Java code Refactoring - 16
17 Refactoring Growing catalog of refactoring actions Organize imports Rename {field, method, class, package} Move {field, method, class} Extract method Extract local variable Inline local variable Reorder method parameters Refactoring - 17
18 Cechy języka utrudniające refaktoryzację Mechanizm refleksji określenie klasy danego obiektu, uzyskanie informacji nt. modyfikatorów klasy, pól, metod, konstruktorów i nadklasy, odkrycie, jakie stałe i deklaracje metod należą do danego interfejsu, stworzenie instancji klasy, której nazwa nie jest znana do chwili uruchomienia programu, pobranie i ustawienie wartości pola obiektu, nawet jeśli nazwa pola nie jest znana aż do uruchomienia programu, wywołanie metody obiektu, nawet bez uprzedniej znajomości jej nazwy, stworzenie tablicy, której rozmiar i typ przechowywanych obiektów nie jest znany aż do chwili wykonania programu, a następnie modyfikowanie przechowywanych w niej obiektów. Refactoring - 18
19 Wymagania stawiane narzędziom oraz algorytmom Zasada niezmienionego zachowania Samodzielne pozyskiwanie maksymalnej ilości potrzebnych danych Niemożność polegania na użytkowniku w sprawie bezpieczeństwa refaktoryzacji Udostępnianie użytkownikowi listy problemów Maksymalnie dobra jakość generowanego kodu Prostota i łatwość modyfikacji wygenerowanego kodu Brak kompilacji kodu w trakcie refaktoryzacji w celu sprawdzenia jego poprawności Refactoring - 19
20 Wpływ dodania klasy na zachowanie Przed import java.util.*; class A { HashMap m = new HashMap();} Po import java.util.*; class HashMap {} class A { HashMap m = new HashMap();} Refactoring - 20
21 Refaktoryzacje (1) Zmiana nazwy (Rename) Przemieszczenie klasy (Move class) Przemieszczenie pola statycznego (Move static field) Przemieszczenie pola (Move field) Przemieszczenie metody statycznej (Move static method) Przemieszczenie metody nie-statycznej (Move non-static method) Ekstrakcja metody (Extract Method) Rozwinięcie wywołań metody (Inline method) Rozwinięcie odwołań do zmiennej (Inline variable) Wprowadzenie zmiennej objaśniającej (Introduce explaining variable) Awansowanie zmiennej do pola (Promote temporary to field) Zmiana nagłówka metody (Change method signature) Ekstrakcja interfejsu (Extract Interface) Ekstrakcja nadklasy (Extract Superclass) Refactoring - 21
22 Refaktoryzacje (2) Przemieszczenie metody/pola w dół hierarchii dziedziczenia (Push down method/field) Przemieszczenie metody/pola w górę hierarchii dziedziczenia (Pull up method/field) Enkapsulacja dostępu do pola (Encalpsulate field) Użycie typu nadrzędnego gdzie to możliwe (Use Supertype where possible) Dodanie metod delegujących (Add delegate methods) Oczyszczenie deklaracji import (Clean imports) Minimalizowanie praw dostępu (Minimize Access Rights) Stworzenie metody fabrycznej (Create factory method) Wprowadzenie stałej (Introduce constant) Ustatycznienie metody (Make method static) Bezpieczne usunięcie (Safe delete) Zamiana klasy anonimowej na zagnieżdżoną (Convert anonymous to inner) Zastąpienie zmiennej wyrażeniem (Replace temp with query) Wyodrębnienie na zewnątrz łańcuchów tekstowych (Externalize Strings) Refactoring - 22
23 Wprowadzenie Obiektu Null Przed class ZamykaczOkien { void pozamykaj() { Okno o = znajdźokno(); if (o!= null) { o.zamknij(); } } Okno znajdźokno() { return null; } } Po class ZamykaczOkien { void pozamykaj() { Okno o = znajdźokno(); o.zamknij(); } } Okno znajdźokno() { return new OknoNull(); } class OknoNull extends Okno { public void zamknij() {} } Refactoring - 23
24 Redukcja zakresu zmiennej Przed int i=1; zróbcoś(); zróbcośinnego(); obliczjeszczecośinnego(); pierwszeużycie(i);... Po zróbcoś(); zróbcośinnego(); obliczjeszczecośinnego(); int i = 1; pierwszeużycie(i); Refactoring - 24
25 Wprowadzenie Klasy Wyliczeniowej (1) Przed public class Person { public static final int BLOOD_GROUP_0 = 0; public static final int BLOOD_GROUP_A = 1; public static final int BLOOD_GROUP_B = 2; public static final int BLOOD_GROUP_AB = 3; private int bloodgroup; public Person(int bg) { bloodgroup = bg; } } Po public class Person { private BloodGroup bloodgroup; public Person(BloodGroup bg) { bloodgroup = bg; } } public class BloodGroup { public static final int 0 = new BloodGroup(0); public static final int A = new BloodGroup(1); public static final int B = new BloodGroup(2); public static final int AB = new BloodGroup(3); private int bloodgroup; private BloodGroup(int bg) { bloodgroup = bg; } } Refactoring - 25
26 Wprowadzenie Klasy Wyliczeniowej (2) Refactoring - 26
27 Refaktoryzacja w Eclipse Refactoring - 27
28 Refaktoryzacja w Eclipse Refactoring - 28
29 Refaktoryzacja w Visual Studio Refactoring - 29
Etap implementacji. Refaktoryzacja
Etap implementacji Refaktoryzacja Koncepcja refaktoryzacji Termin refaktoryzacja (ang. Refactoring) definiuje się jako mechanizm zmiany struktury kodu bez zmiany jego zachowania (funkcjonalności). Celem
SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1. Fry #65, Zeno #67. like
SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1 I SSW1.1, HFW Fry #65, Zeno #67 Benchmark: Qtr.1 like SSW1.2, HFW Fry #47, Zeno #59 Benchmark: Qtr.1 do SSW1.2, HFW Fry #5, Zeno #4 Benchmark: Qtr.1 to SSW1.2,
Zakopane, plan miasta: Skala ok. 1: = City map (Polish Edition)
Zakopane, plan miasta: Skala ok. 1:15 000 = City map (Polish Edition) Click here if your download doesn"t start automatically Zakopane, plan miasta: Skala ok. 1:15 000 = City map (Polish Edition) Zakopane,
Stargard Szczecinski i okolice (Polish Edition)
Stargard Szczecinski i okolice (Polish Edition) Janusz Leszek Jurkiewicz Click here if your download doesn"t start automatically Stargard Szczecinski i okolice (Polish Edition) Janusz Leszek Jurkiewicz
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition) Robert Respondowski Click here if your download doesn"t start automatically Wojewodztwo Koszalinskie:
Katowice, plan miasta: Skala 1: = City map = Stadtplan (Polish Edition)
Katowice, plan miasta: Skala 1:20 000 = City map = Stadtplan (Polish Edition) Polskie Przedsiebiorstwo Wydawnictw Kartograficznych im. Eugeniusza Romera Click here if your download doesn"t start automatically
Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017
Wykład 13 14 czerwiec 2017 Java vs cpp - podobieństwa Podobny sposób definiowania klas. Występowanie typów podstawowych: boolean, char, byte, short, int, long, float, double. Podobna zasada definiowania
Tychy, plan miasta: Skala 1: (Polish Edition)
Tychy, plan miasta: Skala 1:20 000 (Polish Edition) Poland) Przedsiebiorstwo Geodezyjno-Kartograficzne (Katowice Click here if your download doesn"t start automatically Tychy, plan miasta: Skala 1:20 000
MaPlan Sp. z O.O. Click here if your download doesn"t start automatically
Mierzeja Wislana, mapa turystyczna 1:50 000: Mikoszewo, Jantar, Stegna, Sztutowo, Katy Rybackie, Przebrno, Krynica Morska, Piaski, Frombork =... = Carte touristique (Polish Edition) MaPlan Sp. z O.O Click
Instrukcja konfiguracji usługi Wirtualnej Sieci Prywatnej w systemie Mac OSX
UNIWERSYTETU BIBLIOTEKA IEGO UNIWERSYTETU IEGO Instrukcja konfiguracji usługi Wirtualnej Sieci Prywatnej w systemie Mac OSX 1. Make a new connection Open the System Preferences by going to the Apple menu
Miedzy legenda a historia: Szlakiem piastowskim z Poznania do Gniezna (Biblioteka Kroniki Wielkopolski) (Polish Edition)
Miedzy legenda a historia: Szlakiem piastowskim z Poznania do Gniezna (Biblioteka Kroniki Wielkopolski) (Polish Edition) Piotr Maluskiewicz Click here if your download doesn"t start automatically Miedzy
Karpacz, plan miasta 1:10 000: Panorama Karkonoszy, mapa szlakow turystycznych (Polish Edition)
Karpacz, plan miasta 1:10 000: Panorama Karkonoszy, mapa szlakow turystycznych (Polish Edition) J Krupski Click here if your download doesn"t start automatically Karpacz, plan miasta 1:10 000: Panorama
ARNOLD. EDUKACJA KULTURYSTY (POLSKA WERSJA JEZYKOWA) BY DOUGLAS KENT HALL
Read Online and Download Ebook ARNOLD. EDUKACJA KULTURYSTY (POLSKA WERSJA JEZYKOWA) BY DOUGLAS KENT HALL DOWNLOAD EBOOK : ARNOLD. EDUKACJA KULTURYSTY (POLSKA WERSJA Click link bellow and free register
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition) Robert Respondowski Click here if your download doesn"t start automatically Wojewodztwo Koszalinskie:
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition) Robert Respondowski Click here if your download doesn"t start automatically Wojewodztwo Koszalinskie:
OpenPoland.net API Documentation
OpenPoland.net API Documentation Release 1.0 Michał Gryczka July 11, 2014 Contents 1 REST API tokens: 3 1.1 How to get a token............................................ 3 2 REST API : search for assets
Helena Boguta, klasa 8W, rok szkolny 2018/2019
Poniższy zbiór zadań został wykonany w ramach projektu Mazowiecki program stypendialny dla uczniów szczególnie uzdolnionych - najlepsza inwestycja w człowieka w roku szkolnym 2018/2019. Składają się na
Analysis of Movie Profitability STAT 469 IN CLASS ANALYSIS #2
Analysis of Movie Profitability STAT 469 IN CLASS ANALYSIS #2 aaaklnictzzjb9tgfmcnadpg7oy0lxa9edva9kkapdarhyk2k7gourinlwsweyzikuyiigvyleiv/cv767fpf/5crc1xt9va5mx7w3m/ecuqw1kuztpx/rl3/70h73/w4cog9dhhn3z62d6jzy+yzj766txpoir9nzszisjynetqr+rvlfvyoozu5xbybpsxb1wahul8phczdt2v4zgchb7uecwphlyigrgkjcyiflfyci0kxnmr4z6kw0jsokvot8isntpa3gbknlcufiv/h+hh+eur4fomd417rvtfjoit5pfju6yxiab2fmwk0y/feuybobqk+axnke8xzjjhfyd8kkpl9zdoddkazd5j6bzpemjb64smjb6vb4xmehysu08lsrszopxftlzee130jcb0zjxy7r5wa2f1s2off2+dyatrughnrtpkuprlcpu55zlxpss/yqe2eamjkcf0jye8w8yas0paf6t0t2i9stmcua+inbi2rt01tz22tubbqwidypvgz6piynkpobirkxgu54ibzoti4pkw2i5ow9lnuaoabhuxfxqhvnrj6w15tb3furnbm+scyxobjhr5pmj5j/w5ix9wsa2tlwx9alpshlunzjgnrwvqbpwzjl9wes+ptyn+ypy/jgskavtl8j0hz1djdhzwtpjbbvpr1zj7jpg6ve7zxfngj75zee0vmp9qm2uvgu/9zdofq6r+g8l4xctvo+v+xdrfr8oxiwutycu0qgyf8icuyvp/sixfi9zxe11vp6mrjjovpmxm6acrtbia+wjr9bevlgjwlz5xd3rfna9g06qytaoofk8olxbxc7xby2evqjmmk6pjvvzxmpbnct6+036xp5vdbrnbdqph8brlfn/n/khnfumhf6z1v7h/80yieukkd5j0un82t9mynxzmk0s/bzn4tacdziszdhwrl8x5ako8qp1n1zn0k6w2em0km9zj1i4yt1pt3xiprw85jmc2m1ut2geum6y6es2fwx6c+wlrpykblopbuj5nnr2byygfy5opllv4+jmm7s6u+tvhywbnb0kv2lt5th4xipmiij+y1toiyo7bo0d+vzvovjkp6aoejsubhj3qrp3fjd/m23pay8h218ibvx3nicofvd1xi86+kh6nb/b+hgsjp5+qwpurzlir15np66vmdehh6tyazdm1k/5ejtuvurgcqux6yc+qw/sbsaj7lkt4x9qmtp7euk6zbdedyuzu6ptsu2eeu3rxcz06uf6g8wyuveznhkbzynajbb7r7cbmla+jbtrst0ow2v6ntkwv8svnwqnu5pa3oxfeexf93739p93chq/fv+jr8r0d9brhpcxr2w88bvqbr41j6wvrb+u5dzjpvx+veoaxwptzp/8cen+xbg==
www.irs.gov/form990. If "Yes," complete Schedule A Schedule B, Schedule of Contributors If "Yes," complete Schedule C, Part I If "Yes," complete Schedule C, Part II If "Yes," complete Schedule C, Part
Revenue Maximization. Sept. 25, 2018
Revenue Maximization Sept. 25, 2018 Goal So Far: Ideal Auctions Dominant-Strategy Incentive Compatible (DSIC) b i = v i is a dominant strategy u i 0 x is welfare-maximizing x and p run in polynomial time
Egzamin maturalny z języka angielskiego na poziomie dwujęzycznym Rozmowa wstępna (wyłącznie dla egzaminującego)
112 Informator o egzaminie maturalnym z języka angielskiego od roku szkolnego 2014/2015 2.6.4. Część ustna. Przykładowe zestawy zadań Przykładowe pytania do rozmowy wstępnej Rozmowa wstępna (wyłącznie
www.irs.gov/form990. If "Yes," complete Schedule A Schedule B, Schedule of Contributors If "Yes," complete Schedule C, Part I If "Yes," complete Schedule C, Part II If "Yes," complete Schedule C, Part
Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 Zofia Kruczkiewicz
Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 http://www.junit.org/ Zofia Kruczkiewicz 1. Aby utworzyć test dla jednej klasy, należy kliknąć prawym przyciskiem myszy w oknie Projects na wybraną
Proposal of thesis topic for mgr in. (MSE) programme in Telecommunications and Computer Science
Proposal of thesis topic for mgr in (MSE) programme 1 Topic: Monte Carlo Method used for a prognosis of a selected technological process 2 Supervisor: Dr in Małgorzata Langer 3 Auxiliary supervisor: 4
Zasady rejestracji i instrukcja zarządzania kontem użytkownika portalu
Zasady rejestracji i instrukcja zarządzania kontem użytkownika portalu Rejestracja na Portalu Online Job Application jest całkowicie bezpłatna i składa się z 3 kroków: Krok 1 - Wypełnij poprawnie formularz
Hard-Margin Support Vector Machines
Hard-Margin Support Vector Machines aaacaxicbzdlssnafiyn9vbjlepk3ay2gicupasvu4iblxuaw2hjmuwn7ddjjmxm1bkcg1/fjqsvt76fo9/gazqfvn8y+pjpozw5vx8zkpvtfxmlhcwl5zxyqrm2vrg5zw3vxmsoezi4ogkr6phieky5crvvjhriqvdom9l2xxftevuwcekj3lktmhghgniauiyutvrwxtvme34a77kbvg73gtygpjsrfati1+xc8c84bvraowbf+uwnipyehcvmkjrdx46vlykhkgykm3ujjdhcyzqkxy0chur6ax5cbg+1m4bbjptjcubuz4kuhvjoql93hkin5hxtav5x6yyqopnsyuneey5ni4keqrxbar5wqaxbik00icyo/iveiyqqvjo1u4fgzj/8f9x67bzmxnurjzmijtlybwfgcdjgfdtajwgcf2dwaj7ac3g1ho1n4814n7wwjgjmf/ys8fenfycuzq==
Zdecyduj: Czy to jest rzeczywiście prześladowanie? Czasem coś WYDAJE SIĘ złośliwe, ale wcale takie nie jest.
Zdecyduj: Czy to jest rzeczywiście prześladowanie? Czasem coś WYDAJE SIĘ złośliwe, ale wcale takie nie jest. Miłe przezwiska? Nie wszystkie przezwiska są obraźliwe. Wiele przezwisk świadczy o tym, że osoba,
Steps to build a business Examples: Qualix Comergent
How To Start a BUSINESS Agenda Steps to build a business Examples: Qualix Comergent 1 Idea The Idea is a Piece of a Company 4 2 The Idea is a Piece of a Company Investing_in_New_Ideas.wmv Finding_the_Problem_is_the_Hard_Part_Kevin
Automatyczne generowanie testów z modeli. Bogdan Bereza Automatyczne generowanie testów z modeli
Automatyczne generowanie testów z modeli Numer: 1 (33) Rozkmina: Projektowanie testów na podstawie modeli (potem można je wykonywać ręcznie, lub automatycznie zwykle chce się automatycznie) A ja mówię
USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian
1 / 12 Content list / Spis Treści 1. Hardware and software requirements, preparing device to upgrade Wymagania sprzętowe i programowe, przygotowanie urządzenia do aktualizacji 2. Installing drivers needed
Emilka szuka swojej gwiazdy / Emily Climbs (Emily, #2)
Emilka szuka swojej gwiazdy / Emily Climbs (Emily, #2) Click here if your download doesn"t start automatically Emilka szuka swojej gwiazdy / Emily Climbs (Emily, #2) Emilka szuka swojej gwiazdy / Emily
Pielgrzymka do Ojczyzny: Przemowienia i homilie Ojca Swietego Jana Pawla II (Jan Pawel II-- pierwszy Polak na Stolicy Piotrowej) (Polish Edition)
Pielgrzymka do Ojczyzny: Przemowienia i homilie Ojca Swietego Jana Pawla II (Jan Pawel II-- pierwszy Polak na Stolicy Piotrowej) (Polish Edition) Click here if your download doesn"t start automatically
Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton
Dzisiejszy wykład Wzorce projektowe Visitor Client-Server Factory Singleton 1 Wzorzec projektowy Wzorzec nazwana generalizacja opisująca elementy i relacje rozwiązania powszechnie występującego problemu
TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 9: Inference in Structured Prediction
TTIC 31210: Advanced Natural Language Processing Kevin Gimpel Spring 2019 Lecture 9: Inference in Structured Prediction 1 intro (1 lecture) Roadmap deep learning for NLP (5 lectures) structured prediction
INICJATYWA STUDENCKA. Gdańsk, 08.04.2014
INICJATYWA STUDENCKA Gdańsk, 08.04.2014 SPOTKANIA 08.04 - Wprowadzenie do Agile/Scrum/Kanban 15.04 - Wprowadzenie do systemu budowania aplikacji Maven 29.04 - Wprowadzenie do testowania 06.05 - Specyfika
Machine Learning for Data Science (CS4786) Lecture11. Random Projections & Canonical Correlation Analysis
Machine Learning for Data Science (CS4786) Lecture11 5 Random Projections & Canonical Correlation Analysis The Tall, THE FAT AND THE UGLY n X d The Tall, THE FAT AND THE UGLY d X > n X d n = n d d The
Jak zasada Pareto może pomóc Ci w nauce języków obcych?
Jak zasada Pareto może pomóc Ci w nauce języków obcych? Artykuł pobrano ze strony eioba.pl Pokazuje, jak zastosowanie zasady Pareto może usprawnić Twoją naukę angielskiego. Słynna zasada Pareto mówi o
Test-Driven Development
Test-Driven Development droga od podstaw do biegłości w rozwijaniu dużych aplikacji Krzysztof Jelski O mnie Szkolenia Software TDD Odcinek 1 TDD newbie TDD C#.NET CF Ciekawość Oczekiwania TDD C#.NET CF
ERASMUS + : Trail of extinct and active volcanoes, earthquakes through Europe. SURVEY TO STUDENTS.
ERASMUS + : Trail of extinct and active volcanoes, earthquakes through Europe. SURVEY TO STUDENTS. Strona 1 1. Please give one answer. I am: Students involved in project 69% 18 Student not involved in
Ankiety Nowe funkcje! Pomoc magda.szewczyk@slo-wroc.pl. magda.szewczyk@slo-wroc.pl. Twoje konto Wyloguj. BIODIVERSITY OF RIVERS: Survey to students
Ankiety Nowe funkcje! Pomoc magda.szewczyk@slo-wroc.pl Back Twoje konto Wyloguj magda.szewczyk@slo-wroc.pl BIODIVERSITY OF RIVERS: Survey to students Tworzenie ankiety Udostępnianie Analiza (55) Wyniki
Enkapsulacja, dziedziczenie, polimorfizm
17 grudnia 2008 Spis treści I Enkapsulacja 1 Enkapsulacja 2 Spis treści II Enkapsulacja 3 Czym jest interfejs Jak definuje się interfejs? Rozszerzanie interfejsu Implementacja interfejsu Częściowa implementacja
Dolny Slask 1: , mapa turystycznosamochodowa: Plan Wroclawia (Polish Edition)
Dolny Slask 1:300 000, mapa turystycznosamochodowa: Plan Wroclawia (Polish Edition) Click here if your download doesn"t start automatically Dolny Slask 1:300 000, mapa turystyczno-samochodowa: Plan Wroclawia
PHP 5 język obiektowy
PHP 5 język obiektowy Wprowadzenie Klasa w PHP jest traktowana jak zbiór, rodzaj różnych typów danych. Stanowi przepis jak stworzyć konkretne obiekty (instancje klasy), jest definicją obiektów. Klasa reprezentuje
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)
Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition) Robert Respondowski Click here if your download doesn"t start automatically Wojewodztwo Koszalinskie:
DODATKOWE ĆWICZENIA EGZAMINACYJNE
I.1. X Have a nice day! Y a) Good idea b) See you soon c) The same to you I.2. X: This is my new computer. Y: Wow! Can I have a look at the Internet? X: a) Thank you b) Go ahead c) Let me try I.3. X: What
Leba, Rowy, Ustka, Slowinski Park Narodowy, plany miast, mapa turystyczna =: Tourist map = Touristenkarte (Polish Edition)
Leba, Rowy, Ustka, Slowinski Park Narodowy, plany miast, mapa turystyczna =: Tourist map = Touristenkarte (Polish Edition) FotKart s.c Click here if your download doesn"t start automatically Leba, Rowy,
Wybrzeze Baltyku, mapa turystyczna 1: (Polish Edition)
Wybrzeze Baltyku, mapa turystyczna 1:50 000 (Polish Edition) Click here if your download doesn"t start automatically Wybrzeze Baltyku, mapa turystyczna 1:50 000 (Polish Edition) Wybrzeze Baltyku, mapa
Blow-Up: Photographs in the Time of Tumult; Black and White Photography Festival Zakopane Warszawa 2002 / Powiekszenie: Fotografie w czasach zgielku
Blow-Up: Photographs in the Time of Tumult; Black and White Photography Festival Zakopane Warszawa 2002 / Powiekszenie: Fotografie w czasach zgielku Juliusz and Maciej Zalewski eds. and A. D. Coleman et
Sargent Opens Sonairte Farmers' Market
Sargent Opens Sonairte Farmers' Market 31 March, 2008 1V8VIZSV7EVKIRX8(1MRMWXIVSJ7XEXIEXXLI(ITEVXQIRXSJ%KVMGYPXYVI *MWLIVMIWERH*SSHTIVJSVQIHXLISJJMGMEPSTIRMRKSJXLI7SREMVXI*EVQIVW 1EVOIXMR0E]XS[R'S1IEXL
Rev Źródło:
KamPROG for AVR Rev. 20190119192125 Źródło: http://wiki.kamamilabs.com/index.php/kamprog_for_avr Spis treści Introdcution... 1 Features... 2 Standard equipment... 4 Installation... 5 Software... 6 AVR
Polimorfizm. dr Jarosław Skaruz
Polimorfizm dr Jarosław Skaruz http://jareks.ii.uph.edu.pl jaroslaw@skaruz.com O czym będzie? finalne składowe klasy abstrakcyjne interfejsy polimorfizm Finalne składowe Domyślnie wszystkie pola i metody
Installation of EuroCert software for qualified electronic signature
Installation of EuroCert software for qualified electronic signature for Microsoft Windows systems Warsaw 28.08.2019 Content 1. Downloading and running the software for the e-signature... 3 a) Installer
MeetingHelper. Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania. Instrukcja obsługi dla programisty
MeetingHelper Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania Instrukcja obsługi dla programisty W tej części został zawarty opis uruchamiania projektu programistycznego,
TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 8: Structured PredicCon 2
TTIC 31210: Advanced Natural Language Processing Kevin Gimpel Spring 2019 Lecture 8: Structured PredicCon 2 1 Roadmap intro (1 lecture) deep learning for NLP (5 lectures) structured predic+on (4 lectures)
y = The Chain Rule Show all work. No calculator unless otherwise stated. If asked to Explain your answer, write in complete sentences.
The Chain Rule Show all work. No calculator unless otherwise stated. If asked to Eplain your answer, write in complete sentences. 1. Find the derivative of the functions y 7 (b) (a) ( ) y t 1 + t 1 (c)
Poland) Wydawnictwo "Gea" (Warsaw. Click here if your download doesn"t start automatically
Suwalski Park Krajobrazowy i okolice 1:50 000, mapa turystyczno-krajoznawcza =: Suwalki Landscape Park, tourist map = Suwalki Naturpark,... narodowe i krajobrazowe) (Polish Edition) Click here if your
No matter how much you have, it matters how much you need
CSR STRATEGY KANCELARIA FINANSOWA TRITUM GROUP SP. Z O.O. No matter how much you have, it matters how much you need Kancelaria Finansowa Tritum Group Sp. z o.o. was established in 2007 we build trust among
SubVersion. Piotr Mikulski. SubVersion. P. Mikulski. Co to jest subversion? Zalety SubVersion. Wady SubVersion. Inne różnice SubVersion i CVS
Piotr Mikulski 2006 Subversion is a free/open-source version control system. That is, Subversion manages files and directories over time. A tree of files is placed into a central repository. The repository
JAVA W SUPER EXPRESOWEJ PIGUŁCE
JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie
METODY PROGRAMOWANIA
METODY PROGRAMOWANIA Testy jednostkowe 8 grudnia 2017 Krzysztof Pawłowski kpawlowski@pjwstk.edu.pl PO CO NAM TESTY? weryfikacja poprawności sprawdzanie regresji specyfikacja dokumentacja wymuszanie dobrego
18. Przydatne zwroty podczas egzaminu ustnego. 19. Mo liwe pytania egzaminatora i przyk³adowe odpowiedzi egzaminowanego
18. Przydatne zwroty podczas egzaminu ustnego I m sorry, could you repeat that, please? - Przepraszam, czy mo na prosiæ o powtórzenie? I m sorry, I don t understand. - Przepraszam, nie rozumiem. Did you
EGZAMIN MATURALNY Z JĘZYKA ANGIELSKIEGO POZIOM ROZSZERZONY MAJ 2010 CZĘŚĆ I. Czas pracy: 120 minut. Liczba punktów do uzyskania: 23 WPISUJE ZDAJĄCY
Centralna Komisja Egzaminacyjna Arkusz zawiera informacje prawnie chronione do momentu rozpoczęcia egzaminu. Układ graficzny CKE 2010 KOD WPISUJE ZDAJĄCY PESEL Miejsce na naklejkę z kodem dysleksja EGZAMIN
Klasy i obiekty cz II
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy
Dokumentacja do API Javy.
Dokumentacja do API Javy http://java.sun.com/j2se/1.5.0/docs/api/ Klasy i obiekty Klasa jest to struktura zawierająca dane (pola), oraz funkcje operujące na tych danych (metody). Klasa jest rodzajem szablonu
Wroclaw, plan nowy: Nowe ulice, 1:22500, sygnalizacja swietlna, wysokosc wiaduktow : Debica = City plan (Polish Edition)
Wroclaw, plan nowy: Nowe ulice, 1:22500, sygnalizacja swietlna, wysokosc wiaduktow : Debica = City plan (Polish Edition) Wydawnictwo "Demart" s.c Click here if your download doesn"t start automatically
Aktualizacja Oprogramowania Firmowego (Fleszowanie) Microprocessor Firmware Upgrade (Firmware downloading)
Aktualizacja Oprogramowania Firmowego (Fleszowanie) Microprocessor Firmware Upgrade (Firmware downloading) ROGER sp.j. Gościszewo 59 82-416 Gościszewo Poland tel. 055 2720132 fax 055 2720133 www.roger.pl
Karpacz, plan miasta 1:10 000: Panorama Karkonoszy, mapa szlakow turystycznych (Polish Edition)
Karpacz, plan miasta 1:10 000: Panorama Karkonoszy, mapa szlakow turystycznych (Polish Edition) J Krupski Click here if your download doesn"t start automatically Karpacz, plan miasta 1:10 000: Panorama
Marzec: food, advertising, shopping and services, verb patterns, adjectives and prepositions, complaints - writing
Wymagania na podstawie Podstawy programowej kształcenia ogólnego dla szkoły podstawowej język obcy oraz polecanego podręcznika New Matura Success Intermediate * Cele z podstawy programowej: rozumienie
Klasy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 13
Klasy Klasa to grupa obiektów, które mają wspólne właściwości, a obiekt jest instancją klasy. Klasa w języku Java może zawierać: pola - reprezentują stan obiektu (odniesienie do pola z kropką), methods
Miedzy legenda a historia: Szlakiem piastowskim z Poznania do Gniezna (Biblioteka Kroniki Wielkopolski) (Polish Edition)
Miedzy legenda a historia: Szlakiem piastowskim z Poznania do Gniezna (Biblioteka Kroniki Wielkopolski) (Polish Edition) Piotr Maluskiewicz Click here if your download doesn"t start automatically Miedzy
!850016! www.irs.gov/form8879eo. e-file www.irs.gov/form990. If "Yes," complete Schedule A Schedule B, Schedule of Contributors If "Yes," complete Schedule C, Part I If "Yes," complete Schedule C,
Zmiany techniczne wprowadzone w wersji Comarch ERP Altum
Zmiany techniczne wprowadzone w wersji 2018.2 Copyright 2016 COMARCH SA Wszelkie prawa zastrzeżone Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci
Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych
Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych mluckner@mini.pw.edu.pl http://www.mini.pw.edu.pl/~lucknerm Programy w Javie składają się z pakietów Pakiety zawierają definicje
www.irs.gov/form990. If "Yes," complete Schedule A Schedule B, Schedule of Contributors If "Yes," complete Schedule C, Part I If "Yes," complete Schedule C, Part II If "Yes," complete Schedule C, Part
Relaxation of the Cosmological Constant
Relaxation of the Cosmological Constant with Peter Graham and David E. Kaplan The Born Again Universe + Work in preparation + Work in progress aaab7nicdvbns8nafhypx7v+vt16wsycp5kioseifw8ekthwaepzbf7apztn2n0ipfrhepggifd/jzf/jzs2brudwbhm5rhvtzakro3rfjqlpewv1bxyemvjc2t7p7q719zjphi2wcisdr9qjyjlbblubn6ncmkccoweo6vc7zyg0jyrd2acoh/tgeqrz9ryqdo7sdgq9qs1t37m5ibu3v2qqvekpqyfmv3qry9mwbajnexqrbuemxp/qpxhtoc00ss0ppsn6ac7lkoao/yns3wn5mgqiykszz80zkz+n5jqwotxhnhktm1q//zy8s+vm5nowp9wmwygjzt/fgwcmitkt5oqk2rgjc2hthg7k2fdqigztqgklwfxkfmfte/qnuw3p7xgzvfhgq7gei7bg3nowdu0oqumrvaiz/dipm6t8+q8zamlp5jzhx9w3r8agjmpzw==
Realizacja systemów wbudowanych (embeded systems) w strukturach PSoC (Programmable System on Chip)
Realizacja systemów wbudowanych (embeded systems) w strukturach PSoC (Programmable System on Chip) Embeded systems Architektura układów PSoC (Cypress) Możliwości bloków cyfrowych i analogowych Narzędzia
Wykład 7: Pakiety i Interfejsy
Wykład 7: Pakiety i Interfejsy Plik Źródłowy w Javie Składa się z: instrukcji pakietu (pojedyncza, opcjonalna) instrukcji importujących (wielokrotne, opcjonalne) deklaracji klasy publicznej (pojedyncza,
17-18 września 2016 Spółka Limited w UK. Jako Wehikuł Inwestycyjny. Marek Niedźwiedź. InvestCamp 2016 PL
17-18 września 2016 Spółka Limited w UK Jako Wehikuł Inwestycyjny InvestCamp 2016 PL Marek Niedźwiedź A G E N D A Dlaczego Spółka Ltd? Stabilność Bezpieczeństwo Narzędzia 1. Stabilność brytyjskiego systemu
Zarządzanie sieciami telekomunikacyjnymi
SNMP Protocol The Simple Network Management Protocol (SNMP) is an application layer protocol that facilitates the exchange of management information between network devices. It is part of the Transmission
Program szkolenia: Fundamenty testowania
Program szkolenia: Fundamenty testowania Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Fundamenty testowania Testowanie-fun Testowanie testerzy, test managerowie 2 dni 50%
European Crime Prevention Award (ECPA) Annex I - new version 2014
European Crime Prevention Award (ECPA) Annex I - new version 2014 Załącznik nr 1 General information (Informacje ogólne) 1. Please specify your country. (Kraj pochodzenia:) 2. Is this your country s ECPA
Camspot 4.4 Camspot 4.5
User manual (addition) Dodatek do instrukcji obsługi Camspot 4.4 Camspot 4.5 1. WiFi configuration 2. Configuration of sending pictures to e-mail/ftp after motion detection 1. Konfiguracja WiFi 2. Konfiguracja
Przykład zastosowania notacji UML dla realizacji zastosowania wzorca Mediator (materiały dla studentów na prawach rękopisu)
Dr inż. Wojciech Koziński maj 2007 ZS ISEP WE PW Przykład zastosowania notacji UML dla realizacji zastosowania wzorca Mediator (materiały dla studentów na prawach rękopisu) Opis systemu (wzorca Mediator):
SQL 4 Structured Query Lenguage
Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...
How to translate Polygons
How to translate Polygons Translation procedure. 1) Open polygons.img in Imagine 2) Press F4 to open Memory Window 3) Find and edit tlumacz class, edit all the procedures (listed below) 4) Invent a new
Instrukcja obsługi User s manual
Instrukcja obsługi User s manual Konfigurator Lanberg Lanberg Configurator E-mail: support@lanberg.pl support@lanberg.eu www.lanberg.pl www.lanberg.eu Lanberg 2015-2018 WERSJA VERSION: 2018/11 Instrukcja
Po powtórce zaczynamy naukę kolejnych 10-15 nowych słów i wyrażeń, po czym zostawiamy je w przegródce numer 1. Systematyczność
Fiszki, metoda powtórkowa. System pięciu przegródek Pierwszego dnia nauki możemy zacząć od przyswojenia 10-15 nowych słówek. Wkładamy je wtedy do przegródki numer 1. Kolejnego dnia zaczynamy od powtórki
Polski Krok Po Kroku: Tablice Gramatyczne (Polish Edition) By Anna Stelmach
Polski Krok Po Kroku: Tablice Gramatyczne (Polish Edition) By Anna Stelmach If you are looking for the ebook by Anna Stelmach Polski krok po kroku: Tablice gramatyczne (Polish Edition) in pdf form, in
Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )
Jzyk C++ cz 3 Jarosław Gramacki Instytut Informatyki i Elektroniki # $$%%& ' ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )!" 2 # $$%%& ' ( $%%/,))3 ( %* 2 / 4 ( ( *' *''*,
Zajęcia z języka angielskiego TELC Gimnazjum Scenariusz lekcji Prowadzący: Jarosław Gołębiewski Temat: Czas Present Perfect - wprowadzenie
Zajęcia z języka angielskiego TELC Gimnazjum Scenariusz lekcji Prowadzący: Jarosław Gołębiewski Temat: Czas Present Perfect - wprowadzenie I. Cele lekcji 1) Wiadomości Uczeń: wie, że czas present perfect
Klaps za karę. Wyniki badania dotyczącego postaw i stosowania kar fizycznych. Joanna Włodarczyk
Klaps za karę Wyniki badania dotyczącego postaw i stosowania kar fizycznych Joanna Włodarczyk joanna.wlodarczyk@fdds.pl Warszawa, 1.12.2017 Fundacja Dajemy Dzieciom Siłę, 2017 Informacje o badaniu Badanie
Niepubliczne Przedszkole i Żłobek EPIONKOWO
KROPECZKI MIESIĄC: PAŹDZIERNIK 2013R. TEMAT MATERIAŁ Hello again! What s your name? Proste powitania Wskazywanie kolegów/koleżanek Śpiewanie piosenki Dialogi A. Hello! I am Kasia. My name is Kasia What
Machine Learning for Data Science (CS4786) Lecture 11. Spectral Embedding + Clustering
Machine Learning for Data Science (CS4786) Lecture 11 Spectral Embedding + Clustering MOTIVATING EXAMPLE What can you say from this network? MOTIVATING EXAMPLE How about now? THOUGHT EXPERIMENT For each
deep learning for NLP (5 lectures)
TTIC 31210: Advanced Natural Language Processing Kevin Gimpel Spring 2019 Lecture 6: Finish Transformers; Sequence- to- Sequence Modeling and AJenKon 1 Roadmap intro (1 lecture) deep learning for NLP (5
1. CZYM JEST SERIALIZACJA
SERIALIZACJA O CZYM POWIEMY? 1. Czym jest serializacja? 2. Jak przeprowadzić proces serializacji? 3. Jak przeprowadzić proces deserializacji? 4. Serializacja własnych klas. 5. Dobre praktyki. 6. SoapFormatter.
Programowanie obiektowe
Programowanie obiektowe IV. Interfejsy i klasy wewnętrzne Małgorzata Prolejko OBI JA16Z03 Plan Właściwości interfejsów. Interfejsy a klasy abstrakcyjne. Klonowanie obiektów. Klasy wewnętrzne. Dostęp do
Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
Wstęp. Ale po co? Implementacja
Wstęp Mechanizm sesji jest jedną z podstawowych form komunikacji pomiędzy skryptami jako jedyna tablica z super globalnych nie jest widoczna dla użytkownika. Mimo, że PHP od wersji 4 staje się coraz bardziej
USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian
1 / 9 Content list / Spis Treści 1. Hardware and software requirements, preparing device to upgrade Wymagania sprzętowe i programowe, przygotowanie urządzenia do aktualizacji 2. Installing drivers and