Lekcja 10. Programming tools

29 stycznia 2019
1 gwiadka2 gwiazdki3 gwiazdki4 gwiazdki5 gwiazdek

Obejrzyj poniższy film. Nie przejmuj się, jeśli nie wszystko w nim zrozumiesz. Najważniejsze jest to, aby obejrzeć go przed przeczytaniem tekstu.

Odpowiedz na poniższe pytania.

  1. What is NetBeans?
  2. What programming languages does NetBeans handle?
  3. On what operating systems does NetBeans work?
  4. Which version of NetBeans does the author download?
  5. According to the narrator, is the installation of NetBeans easy or difficult?
  6. What do you need to create to start programming in NetBeans?
  7. Which option to create a now project did the author choose?
  8. What can you see in the left pane after creating a new project?

Programming tools are programs used by software developers (also known as programmers, coders, hackers or software engineers) to create, debug, or maintain software. These tools may be relatively self-contained programs such as compilers, debuggers, interpreters, linkers, and text editors, that can be combined together to accomplish a task; or they may form an integrated development environment (IDE) , which combines much or all of the functionality of such self-contained tools.

Compiler

A compiler is a computer program that transforms source code written in a high-level programming language (the source language) into low-level computer language (the target language), most often to create an executable program. If the compiled program can run on a computer whose CPU or operating system is different from the one on which the compiler runs, the compiler is known as a cross-compiler. A program that translates from a low level language to a higher level one is a decompiler.

A compiler is likely to perform many or all of the following operations: lexical analysis, preprocessing, parsing, semantic analysis, code generation, and code optimization.

Debugger

A debugger is a computer program used to test and debug other programs. Debuggers offer many sophisticated functions such as running a program step by step, breaking (pausing) at some event or by means of a breakpoint to examine the current state, and tracking the values of variables. Some debuggers have the ability to modify program state while it is running. It may also be possible to continue execution at a different location in the program to bypass a crash or logical error.

Interpreter

An interpreter is a computer program that directly executes instructions written in a programming without previously compiling them into a machine language program.

Linker

A linker is a computer program that takes one or more object files generated by a compiler and combines them into a single executable file, library file, or another object file.

Vocabulary

breakpoint
punkt wstrzymania
by means of
za pomocą
bypass
obejść, ominąć
code generation
generowanie kodu
code optimization
optymalizacja kodu
coder
programista, pot. koder
compiled program
skompilowany program
compiler
kompilator
crash
awaria
cross-compiler
kompilator krzyżowy
debug
przeprowadzać diagnostykę, pot. debugować
debugger
debuger
decompiler
dekompilator
different from
różny od, inny niż
executable program
program wykonywalny
functionality
funkcjonalność
hacker
haker
Ii may also be possible to
możliwe może być także
instruction
instrukcja
integrated development environment (IDE)
zintegrowane środowisko programistyczne
interpreter
interpreter
known as
znany jako
lexical analysis
analiza leksykalna
library file
plik biblioteki
likely
prawdopodobny
linker
konsolidator, pot. linker
logical error
błąd logiczny
most often
zazwyczaj, zwykle, najczęściej
object file
plik obiektowy
one or more
przynajmniej jeden
operating system
system operacyjny
operation
operacja
parsing
analiza składniowa, pot. parsowanie
preprocessing
przetwarzanie wstępne
previously
uprzednio, wcześniej, poprzednio
program state
stan programu
programmer
programista
programming tool
narzędzie programistyczne
relatively
względnie
self-contained
samodzielny, samowystarczalny
semantic analysis
analiza semantyczna
software developer
specjalista ds. rozwoju oprogramowania
software engineer
inżynier programista
sophisticated
zaawansowany, wyszukany
source language
język źródłowy
step by step
krok po kroku
target language
język docelowy
text editor
edytor tekstu
to accomplish a task
wykonać zadanie
to break at some event
wstrzymać wykonywanie w chwili wystąpienia pewnego zdarzenia
to combine together
tworzyć kombinację
to debug
diagnozować program, pot. debugować
to examine the current state
zbadać aktualny stan
to have the ability to
mieć możliwość do
to maintain software
„świadczyć obsługę techniczną oprogramowania”
to run on a computer
działać na komputerze
to test
testować
to track the values of variables
śledzić wartości zmiennych
to translate from
przetłumaczyć z
whose
czyj

Exercises

Exercise 1. Match the words in column A with their partners in column B.

programmingsoftware
softwareprogram
maintaintool
self-development environment
integratedfrom
executableoptimization
differentanalysis
operatingerror
lexicalstate
codecontained
programsystem
logicaldeveloper

Exercise 2. Answer the following questions

  1. What are programming tools?
  2. What is an integrated development environment?
  3. What is a compiler?
  4. What is a cross-compiler?
  5. What is a decompiler?
  6. What operations does a compiler perform?
  7. What is a debugger?
  8. What sophisticated functions do debuggers offer?
  9. What is an interpreter?
  10. What is a linker?

Exercise 3. Write sentences about compilers using the word "perform" and the information from the box, as in the example.

lexical analysis, semantic analysis, preprocessing, parsing, code optimization, transformation into low-level language, compilation, dependence analysis

A compiler can perform lexical analysis of the source code.

Exercise 4. Read the text and complete the following sentences.

  1. A compiler is a computer program that…
  2. An integrated development environment is a computer program that…
  3. A debugger is a computer program that…
  4. An interpreter is a computer program that…
  5. A linker is a computer program that…

Exercise 5. Translate the following sentences or phrases into English. Use the verb "offer".

Debugery zapewniają wiele zaawansowanych funkcji. -> Debuggers offer many sophisticated functions.

  1. Debugery zapewniają funkcje umożliwiające wykonywanie programu krok po kroku.
  2. Debugery zapewniają funkcje umożliwiające przerwanie działania programu na pewnym zdarzeniu.
  3. Debugery umożliwiają korzystanie z punktów wstrzymania służących do przerywania działania programu na określonej instrukcji.
  4. Debugery zapewniają funkcje do sprawdzania bieżącego stanu działającego programu.
  5. Degugery zapewniają funkcje do sprawdzania wartości zmiennych.
  6. Debugery zapewniają funkcje umożliwiające modyfikowanie stanu działającego programu.
  7. Debugery zapewniają funkcje umożliwiające obejście awarii lub błędu logicznego.
  8. Kompilator umożliwia tłumaczenie kodu źródłowego w języku wysokopoziomowym na kod źródłowy w języku niskopoziomowym.

Exercise 6. Oral drill. Replace the word "may" with the expression "is likely to" in the following sentences.

A compiler may transform source code written in a high-level programming language into low-level computer language. -> A compiler is likely to transform source code written in a high-level programming language into low-level computer language.

  1. A compiler may create an executable program.
  2. A compiler may compile a program to run on a different CPU or operating system.
  3. A compiler may perform lexical analysis of source code.
  4. A compiler may preprocess source code.
  5. A compiler may parse source code.
  6. A compiler may perform semantic analysis of source code.
  7. A compiler may generate code.
  8. A compiler may optimize code.
  9. A compiler may translate source code.
  10. A compiler may perform analysis of source code.
  11. A compiler may perform syntactic analysis of source code.
  12. A compiler may perform many sophisticated optimizations of source code.
  13. A compiler may perform type checking.
  14. A compiler may perform object binding.
  15. A compiler may issue warnings.
  16. A compiler may catch syntactic errors in source code.
  17. A compiler may verify code syntax.
  18. A compiler may generate efficient object code.
  19. A compiler may perform run-time organization of source code.
  20. A compiler may format the output according to assembler and linker conventions.
  21. A compiler may perform hierarchical analysis of source code.

Exercise 7. Translate the sentences from exercise 6 into Polish.

Exercise 8. Oral drill. Replace the word "may" with the expression "provides the ability to" in the sentences from exercise 6.

Exercise 9. Translate the sentences from exercise 8 into Polish.

Exercise 10. Transform the following quotes into reported speech, as in the example. Don’t change the grammatical tense.

Any given program, when running, is obsolete. -> Someone said that any given program, when running, is obsolete.

  1. Any given program costs more and takes longer each time it is run.
  2. The value of a program is inversely proportional to the weight of its output.
  3. Program complexity grows until it exceeds the capability of the programmer who must maintain it.
  4. Every non trivial program has at least one bug.
  5. Adding manpower to a late software project makes it later.
  6. Any cool program always requires more memory than you have.
  7. Disks are always full.
  8. Data expands to fill any void.
  9. All components become obsolete.
  10. A program generator creates programs that are more buggy than the program generator.
  11. Exercise 11. Translate the above sentences into Polish.

    Exercise 12. Translate the text into Polish.

    Exercise 13. Summarize the text orally using questions from exercise 2 as a plan. Practice until you can say the summary without looking at the text.

    Exercise 14. Translate the following song lyrics into Polish.

    Write in C

    When I find my code in tons of trouble,
    Friends and colleagues come to me,
    Speaking words of wisdom:
    "Write in C."

    As the deadline fast approaches,
    And bugs are all that I can see,
    Somewhere, someone whispers:
    "Write in C."

    Write in C, Write in C,
    Write in C, oh, Write in C.
    LOGO’s dead and buried,
    Write in C.

    I used to write a lot of FORTRAN,
    For science it worked flawlessly.
    Try using it for graphics!
    Write in C.

    If you’ve just spent nearly 30 hours
    Debugging some assembly,
    Soon you will be glad to
    Write in C.

    Write in C, Write in C,
    Write in C, yeah, Write in C.
    Only wimps use BASIC.
    Write in C.

    Write in C, Write in C
    Write in C, oh, Write in C.
    Pascal won’t quite cut it.
    Write in C.

    Write in C, Write in C,
    Write in C, yeah, Write in C.
    Don’t even mention COBOL.
    Write in C.

    (and what about C++ ?)

    Źródło: http://www.poppyfields.net/filks/00259.html

    Źródła:

    Treść tej strony dostępna jest na zasadach licencji CC BY 3.0

    Zobacz również:

Autor: Łukasz Piwko

Tłumacz angielskiej i francuskiej literatury specjalistycznej, nauczyciel, wykładowca i maniak technologii programistycznych. Interesuje go wszystko, co związane z programowaniem i tłumaczeniem tekstów na ten temat na język polski. W wolnym czasie czyta Balzaka, słucha muzyki i trenuje karate.

Dyskusja

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *