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.
- What is NetBeans?
- What programming languages does NetBeans handle?
- On what operating systems does NetBeans work?
- Which version of NetBeans does the author download?
- According to the narrator, is the installation of NetBeans easy or difficult?
- What do you need to create to start programming in NetBeans?
- Which option to create a now project did the author choose?
- 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.
programming | software |
software | program |
maintain | tool |
self- | development environment |
integrated | from |
executable | optimization |
different | analysis |
operating | error |
lexical | state |
code | contained |
program | system |
logical | developer |
Exercise 2. Answer the following questions
- What are programming tools?
- What is an integrated development environment?
- What is a compiler?
- What is a cross-compiler?
- What is a decompiler?
- What operations does a compiler perform?
- What is a debugger?
- What sophisticated functions do debuggers offer?
- What is an interpreter?
- 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.
- A compiler is a computer program that…
- An integrated development environment is a computer program that…
- A debugger is a computer program that…
- An interpreter is a computer program that…
- 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.
- Debugery zapewniają funkcje umożliwiające wykonywanie programu krok po kroku.
- Debugery zapewniają funkcje umożliwiające przerwanie działania programu na pewnym zdarzeniu.
- Debugery umożliwiają korzystanie z punktów wstrzymania służących do przerywania działania programu na określonej instrukcji.
- Debugery zapewniają funkcje do sprawdzania bieżącego stanu działającego programu.
- Degugery zapewniają funkcje do sprawdzania wartości zmiennych.
- Debugery zapewniają funkcje umożliwiające modyfikowanie stanu działającego programu.
- Debugery zapewniają funkcje umożliwiające obejście awarii lub błędu logicznego.
- 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.
- A compiler may create an executable program.
- A compiler may compile a program to run on a different CPU or operating system.
- A compiler may perform lexical analysis of source code.
- A compiler may preprocess source code.
- A compiler may parse source code.
- A compiler may perform semantic analysis of source code.
- A compiler may generate code.
- A compiler may optimize code.
- A compiler may translate source code.
- A compiler may perform analysis of source code.
- A compiler may perform syntactic analysis of source code.
- A compiler may perform many sophisticated optimizations of source code.
- A compiler may perform type checking.
- A compiler may perform object binding.
- A compiler may issue warnings.
- A compiler may catch syntactic errors in source code.
- A compiler may verify code syntax.
- A compiler may generate efficient object code.
- A compiler may perform run-time organization of source code.
- A compiler may format the output according to assembler and linker conventions.
- 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.
- Any given program costs more and takes longer each time it is run.
- The value of a program is inversely proportional to the weight of its output.
- Program complexity grows until it exceeds the capability of the programmer who must maintain it.
- Every non trivial program has at least one bug.
- Adding manpower to a late software project makes it later.
- Any cool program always requires more memory than you have.
- Disks are always full.
- Data expands to fill any void.
- All components become obsolete.
- A program generator creates programs that are more buggy than the program generator.
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++ ?)