http___www.informatika.buzdo.com_s820-qbasic-programiranje.htm_1.xml
1.1 1.2 1.3 1.4 2.1 2.2 3.1 4.1 5.1 5.2 5.3 5.4 5.5 5.6 6.1 6.2 6.3 7.1 7.2 7.3 7.4 7.5 7.6 8.1 8.2 8.3 9.1 9.2 9.3 9.4 9.5 9.6 9.7 10.1 10.2 10.3 11.1 11.2 11.3 11.4 11.5 11.6 11.7 11.8 11.9 11.10 11.11 12.1 13.1 13.2 13.3 13.4 13.5 13.6 13.7 14.1 14.2 14.3 15.1 15.2 15.3 15.4 15.5 15.6 15.7 15.8 16.1 16.2 16.3
The previous chapter has already been said that the choice of language processors - tools for programming, one of the phases of software development. Which to choose? The choice is very wide. First we need to distinguish whether the software product to use on one or more platforms or whether to carry out: Or one of the other environments, or must work to satisfy multiple environments. Then the platform of choice to choose the language processor that will provide the ability to create computer programs by default, all the necessary elements, for example, to execute in a Windows XP environment, allowing access to their own databases or databases can be accessed by other manufacturers, has support for data access on a server over the Internet and so on. Good choice for the Windows XP platform was for instance 'Borland Delphi Studio', the company Borland Software Corporation, available as four different products for the production of software, as follows: Possibilities of some of these products in 'Delphi' previous list, selected sequentially from 1 to 4 are given in the following comparative table: Apart from this there are also more powerful and weaker language processors, and of course later described the family of tools. This example dates from 2002, but nicely illustrates what one professional tool for programming should include. Borlan the 2008th took over the company Embarcadero Technologies, which has continued to develop programming tools. Newer product of mentioned company for the rapid development of program support in Windows, Mac, iOS and Android environment is 'RAD Studio XE6' (Rapid Application Development), which combines the 'Delphi Object Pascal' and 'C++' programming tools in a unique programming environment for the development of user, client-server and Web software with support for a variety of different databases. Today, when almost ubiquitous graphical interface to choose a good language processor that is used just him, and that he possesses 'wizards', and the tools to quickly and easily create such a form for data entry, reports, etc., which is particularly useful for beginners. Experienced users can write source code in a simple editor such as 'Notepad' in the Windows environment, and the tools for 'linking' and 'compile' from him to make enforceable '.com' or '.exe' file for the Windows environment, which with associated system and / or made necessary libraries (software routines) makes the program. A person who is developing computer programs often referred to as a PROGRAMMER, tools for creating computer programs that are used are called programming tools, and the process of program is usually called PROGRAMMING. Microsoft Company for the development of software offers the tools shown in the following pictures for free, with a registered user, if necessary, it is not important if you respect the rights specified in the license. The following pictures with a brief description of each of them acting as connectors to other sites where they can learn more about the individual software tools and download them. 'Express Edition' are simple programming tools easy to use and easy to learn. Products that are designed for those who have a hobby programming, students and non-profit organizations. As such, not all functions can be found in the full professional versions. Each 'Express Edition' edition contains good documentation that will help novice programmer to quickly learn the concepts that are necessary to build advanced applications. User interfaces are well organized to ensure the user-friendliness of the learning process. A new generation of development tools will definitely have to support the development of applications that will successfully take advantage of multi-core and multithreading processors, as well as the upcoming concept of successful use of GPU resources. Absolute novice user will choose to learn some more simpler tool for creating computer programs, such as 'MS-DOS QBASIC' or 'MS-DOS QuickBASIC' (Quick Beginner's All-Purpose Symbolic Instruction Code) of company Microsoft Corporation. This tool has undergone a number of improvements and versions of which is the weakest called QBASIC 1.0 and as the most powerful QuickBASIC 4.5. In Windows 9X environment incorporates the language processor 'MS-DOS QBASIC' version 1.1, which can serve as a basis for learning of software support. The above program support, or programming tool, belongs to the group of interpreters in this version there is no possibility of 'compiling', i.e. creating executable files. This is in a way a free version of the tool that QuickBasic has previously mentioned ability. Fundamentals of software development, and 5 and 6 phase under Chapter 6.1, will continue to be displayed just the tool 'MS-DOS QBASIC' version 1.1. On the Internet you can find free tools similar to the above that fully comply with the syntax of BASIC and have additional options regarding creating forms and windows and even creating executable files, but adapted to the Windows environment, such as 'ThinBasic BASIC Interpreter', 'Emergence BASIC (EBASIC)' or the increasingly popular 'FreeBASIC compiler' designed in versions for DOS, Windows or Linux environment. New product from Redmond - 'Microsoft Small Basic', conceptually simple programming language, easy to learn with affordable developers 'Windows' environment which is basically an introduction to the 'Express' or 'Professional' tools, it is the best choice for beginners. It can also serve commercial tool 'PowerBASIC Compiler' for DOS and Windows operating systems, perfect for the novice programmer, the expert programmer, and most any level in between. From the standpoint of learning compatible with the descriptions that follow in subsequent chapters. For professional use, they are quite popular MS Visual C++ and Java programming tools, and a new generation of career development tools .NET product group of the company Microsoft. For professional work is very important to know the programming tools 'work' with a database, one or more species, such as SQL or Oracle. Increasingly require web-like applications and the ability to work with PHP (Hypertext Pre-Processor) scripting language and database access located on a web server on it. The program contains basically three parts. The first part of the mathematical model makes the task that program has to do that part usually occupies about 25% of program code. The second part is the creation of forms for data entry, was just over the keyboard and / or with the mouse, and output forms that give the user the results of treatment, and this part takes up about 25% of program code. Other waste and eliminate unwelcome prediction errors, type division by zero, exceeding the limit values of variables, and so forth. This third part of basically eliminating errors (error trapping) that could stop the flow of running the program. There will fall off and say part that controls whether in the form of input numbers are some letters. The program then not be interrupted, but the user should be shown a warning like: 'Warning, this is the only form of input numbers'. Therefore, testing is an important part in the development of computer programs is described as one of the stages of development of the program in the previous chapter. Suppose, on the mathematical tests; What is (1/3)*3? What to do when a division by zero? This means that the developer must very well to identify the problem of user, try to spot all his habits, such as how to use a computer, and a very good knowledge of language processor which is used in programming. SUMMARY: From what we have said it is clear that dealing with programming and software development, requiring education and the acquisition of knowledge and skills in order to develop the skills of abstraction, or the ability to articulate and address the problem or task with different approaches regarding its settlement with the separation of the essential from non-essential properties. Trivial example is the computation of trigonometric functions. Accepting 'final notice' virtual images without vision problems and possible methods to solve it, such as the value of the basic trigonometric angles without visualization capabilities circulation unit vector in the coordinate system, not a peculiarity which distinguishes effective programmers. Is the development of software for accounting service is essential to the accuracy of the estimates more than two decimal places? Or an entirely mathematical problem; 1/3=0.333333...   0.333333...×3=1? The programmer should have a wide range of knowledge, must be resourceful, shrewd, clever, imaginative, creative, persistent, stubborn, and a systematic and steadfast love this job. Must constantly keep abreast of new technologies, and to learn from their own and others' mistakes. Knowledge of English, mathematics, physics, technical drawing, art, music and similar 'unnecessary' knowledge of the following is not superfluous, nay permanent lifelong learning, school and independently, is a prerequisite for the successful work of good programmers where the programming can become a job. What kind of job? Say: Software for accounting firms or mailroom, depending on the volume of business, number of employees in them and the available computer equipment, or it can contain quite a bit of this, and in the development of computer programs may participate one or more persons. Making quality of computer games, for example, requires advanced skills since its designing to making the source code for the operating system on which the game will use. It is very difficult for one person to expect success and enviable skill in multiple categories, and integration activities of skilled people in order to achieve the desired results, it is also art. Teamwork is essential. From the idea to its realization is a long way. Successful and relatively quick example of achieving the goal is the 'Google'. Have set themselves to do a good search engine and offer good services - and very successfully so. So, it takes considerable knowledge, skill in recognizing the problem or task, and a clear vision of its settlement. It has been said on the program devised a set of instructions executed by the processor. Devised a logical point of view with the human side, but when viewed by 'eye' of the processor which never knows what the next instruction is, ENTROPY is sizeable. To be noted mitigated almost all of the computers devices used by some his own fast buffer (cache) that stores content related previous instructions or data, as some predict possible next tasks and thus achieves faster retrieval of needy.
1.1 1.2 1.3 1.4 2.1 2.2 3.1 4.1 5.1 5.2 5.3 5.4 5.5 5.6 6.1 6.2 6.3 7.1 7.2 7.3 7.4 7.5 7.6 8.1 8.2 8.3 9.1 9.2 9.3 9.4 9.5 9.6 9.7 10.1 10.2 10.3 11.1 11.2 11.3 11.4 11.5 11.6 11.7 11.8 11.9 11.10 11.11 12.1 13.1 13.2 13.3 13.4 13.5 13.6 13.7 14.1 14.2 14.3 15.1 15.2 15.3 15.4 15.5 15.6 15.7 15.8 16.1 16.2 16.3 16.4
U prethodnom poglavlju već je rečeno da je izbor jezičkog procesora - alata za programiranje, jedna od faza razvoja programske potpore. Koji izabrati? Izbor je vrlo širok. Prvo treba razlučiti da li će se programski proizvod koristiti na jednoj ili više platformi odnosno hoće li se izvršavati u: Ili na nekom od drugih okruženja, ili pak mora zadovoljiti rad na više okruženja. Potom po izboru platforme treba izabrati onaj jezički procesor koji će pružiti mogućnost izrade programske potpore po svim potrebnim zadanim elementima, na primjer da se izvršava u Windows XP okruženju, omogućava dostup vlastitim bazama podataka ili može pristupiti bazama podataka drugih proizvođača, ima potporu za pristup podacima na nekom poslužitelju preko Interneta i slično. Dobar izbor za Windows XP platformu bio je na primjer 'Borland Delphi Studio', firme Borland Software Corporation, dostupan kao četiri različita proizvoda za izradu programske potpore i to: Mogućnosti pojedinih od navedenih delphi_proizvoda u prethodnoj listi, označenih redno od 1 do 4, date su u narednoj komparativnoj tablici: Osim navedenog postoje i moćniji i slabiji jezički procesori, i naravno noviji iz opisane porodice alata. Navedeni primjer datira još iz 2002 godine, ali lijepo ilustrira što bi jedan profesionalni alata za programiranje trebao sadržavati. Borlan je 2008. godine preuzela firma Embarcadero Technologies, koja je nastavila razvijati programerske alate. Noviji proizvod navedene firme za brzi razvoj programske potpore u Windows, Mac, iOS i Android okruženju je 'RAD Studio XE6' (Rapid Application Development), koji kombinira 'Delphi Object Pascal' i 'C++' programerske alate u jedinstveno programersko okruženje za razvoj korisničkih, korisnik-poslužitelj i web programske potpore uz podršku za mnoštvo različitih baza podataka. Danas, kada je gotovo svugdje prisutno grafičko sučelje dobro je izabrati jezički procesor koji se koristi upravo njime, te da posjeduje 'čarobnjake', odnosno alate za brzu i jednostavnu izradu na primjer formi za unos podataka, izvješća i slično, što je osobito korisno za početnike. Iskusni korisnik može napisati izvorni kod (source code) u običnom editoru, kao što je 'Notepad' u Windows okruženju, te s alatima za 'linkanje' i 'kompajliranje' od njega načiniti izvršivu '.com' ili '.exe' datoteku za Windows okruženje, što uz pridružene sistemske i / ili prema potrebi izrađene biblioteke (programske rutine) čini PROGRAM. Osoba koja se bavi izradom programske potpore često se naziva PROGRAMER, alati za izradu programske potpore s kojima se služi nazivaju se programerski alati, a sam proces izrade programa obično se naziva PROGRAMIRANJE. Firma Microsoft za razvoj programske potpore nudi alate prikazane na narednim slikama besplatno, uz registriraju korisnika ako je potrebno, što nije od značaja ako se poštuju prava koja su naveli u licenčnim uvjetima. Naredne slike s kratkim opisom svakog od njih ujedno su spojnice prema stranicama gdje se može više saznati o pojedinim programskim alatima i preuzeti ih. 'Express Edition' su jednostavni programerski alati laki za upotrebu i laki za učenje. Proizvodi koji su kreirani za one kojima je programiranje hobi, učenike, studente i neprofitabilne organizacije. Kao takvi, nemaju sve funkcije koje se mogu naći u potpunim profesionalnim inačicama. Svako 'Express Edition' izdanje sadrži dobru dokumentaciju koja će pomoći programeru-početniku da brzo nauči koncepte koji su neophodni da bi se izgradile napredne aplikacije. Korisnička sučelja su dobro organizirana kako bi se osiguralo razumljivost u procesu učenja. Nova generacija programerskih alata zasigurno će morati podržati izradu aplikacija koje će uspješno koristiti prednosti procesora s više jezgri i višenitnost, kao i nadolazeći koncept uspješnog korištenja resursa GPU. Apsolutni korisnik početnik izabrati će za učenje neki još jednostavniji alat za izradu programske potpore, kao na primjer 'MS-DOS QBASIC' ili 'MS-DOS QuickBASIC' firme Microsoft Corporation. Navedeni alat doživio je brojna poboljšanja i verzije od kojih je najslabija 1.0 pod nazivom QBASIC a najmoćnija 4.5 pod nazivom QuickBASIC (Quick Beginner's All-Purpose Symbolic Instruction Code). U Windows 9X okruženju ukomponiran je jezički procesor 'MS-DOS QBASIC' verzija 1.1 koji može poslužiti kao osnova za učenje izrade programske potpore. Navedena programska potpora, odnosno programerski alat, spada u grupu interpretera i u ovoj verziji nema mogućnost 'kompajliranja', odnosno kreiranja izvršive datoteke. Ovo je na neki način besplatna verzija alata QuickBasic koji navedenu mogućnost ima. Osnove razvoja programske potpore, odnosno 5. i 6. faza prema poglavlju 6.1, nadalje će se prikazati upravo u alatu 'MS-DOS QBASIC' verzija 1.1. Na Internetu se mogu pronaći besplatni alati slični navedenom koji u potpunosti poštuju sintaksu BASIC-a i imaju dodatne mogućnosti glede kreiranja formi i prozora pa čak i izrade izvršive datoteke, ali su prilagođeni Windows okruženju, kao što su 'ThinBasic BASIC Interpreter', 'Emergence BASIC (EBASIC)' ili sve popularniji 'FreeBASIC compiler' dizajniran u verzijama za DOS, Linux ili Windows okruženje. Novi proizvod iz Redmonda - 'Microsoft Small Basic', konceptualno mali programski jezik, jednostavan za učenje s pristupačnim razvojnim 'Windows' okruženjem koje je u osnovi uvod u 'express' ili 'profesionalne' alate, moguće je najbolji izbor za početnike. Može poslužiti i komercijalni alat 'PowerBASIC Compiler' za DOS i Windows operativne sustave, savršen za programere početnike, programere eksperte, ili za bilo koju razini programiranja između navedenih. Sa stanovišta učenja kompatibilni su s opisima koji slijede u narednim poglavljima. Za profesionalnu uporabu dosta su popularni MS Visual C++ i Java programerski alati, te nova generacija profesionalnih razvojnih alata .NET grupe proizvoda firme Microsoft. Za profesionalan rad jako je važno da programerski alati znaju 'raditi' s bazom podataka, jednom vrstom ili više njih, kao što su SQL ili ORACLE. Sve se više zahtijevaju web-olike aplikacije te mogućnost rada s PHP (Hypertext Pre-processor) skriptnim jezikom i pristupa bazama podataka smještenih na web-poslužitelju preko njega. Sam program sadrži u osnovi tri dijela. Prvi dio je čini matematički model zadaće koju program mora odraditi i taj dio obično zauzima oko 25% programskog koda. Drugi dio je izrada formi za unos podataka, bilo samo preko tipkovnice i / ili uz pomoć miša, te izlazne forme koje korisniku daju rezultate obrade, i taj dio zauzima oko 25% programskog koda. Ostalo otpada na eliminiranje i predviđanje nepoćudnih grešaka, tipa dijeljenje s nulom, prekoračenje graničnih vrijednosti varijabli, i slično. Ovaj treći dio u osnovi eliminira greške (error traping) koje bi mogle zaustaviti tijek odvijanja programa. Tu će recimo spadati i dio koji nadzire da li se u formu za unos brojeva nalaze neka slova. Program se tada ne smije prekinuti već korisniku treba da se prikaže upozorenje tipa: 'Tukac, ovo je forma isključivo za unos brojeva'. Stoga je važan dio testiranja u razvoju programske potpore opisan kao jedna od faza izrade programa u prethodnom poglavlju. Recimo, osnovi matematički testovi; Koliko je (1/3)*3? Što uraditi kada se pojavi dijeljenje s nulom? Navedeno znači da programer mora jako dobro prepoznati problem korisnika, pokušati uočiti sve njegove navike, na primjer način kako upotrebljava računalo, i jako dobro poznavati mogućnosti jezičkog procesora kojeg u programiranju koristi. SAŽETAK: Iz dosad navedenog jasno je da bavljenje programiranjem, odnosno razvojem programske potpore, iziskuje obrazovanje te stjecanje znanja i vještina u svrhu razvijanja sposobnosti apstrakcije, odnosno sposobnosti raščlanjivanja i sagledavanja problema ili zadatka s različitim pristupima glede njegovog rješavanja uz odvajanje bitnih od nebitnih svojstava. Banalni primjer je izračunavanje trigonometrijskih funkcija. Prihvaćanje 'gotovih činjenica' bez virtualne predodžbe problema i vizije mogućih metoda njegovog rješavanja, kao na primjer vrijednosti osnovnih trigonometrijskih kutova bez sposobnosti vizualizacije kruženja jediničnog vektora u koordinatnom sustavu, nije osobitost koja odlikuje učinkovitog programera. Dali je u razvoju programske potpore za knjigovodstveni servis bitna točnost izračuna na više od dvije decimale? Ili jedan potpuno matematički problem; 1/3=0.333333...   0.333333...×3=1? Programer treba imati širok spektar znanja, mora biti domišljat, pronicljiv, vješt, maštovit, kreativan, uporan, tvrdoglav, sistematičan i nepokolebljiv i voljeti taj posao. Mora neprekidno pratiti nove tehnologije, i učiti na vlastitim i tuđim greškama. Poznavanje engleskog jezika, matematike, fizike, tehničkog crtanja, likovnog, glazbenog i sličnih 'nepotrebnih' znanja glede navedenog nije na odmet, dapače permanentno cjeloživotno obrazovanje, školsko i samostalno, preduvjet je za uspješan rad dobrog programera kojemu programiranje može postati posao. Kakav posao? Recimo: Programska potpora za računovodstveni servis ili urudžbeni ured, ovisno o obimu posla, broju uposlenika u njima i raspoloživoj računalnoj opremi, može sadržavati malo ili prilično od navedenog, a u razvoju programske potpore može učestvovati jedna ili više osoba. Izrada kvalitetne računalne igre, na primjer, traži napredne vještine od njenog samog dizajna pa do izrade programskog koda za operativni sustav na kojem će se igra koristiti. Vrlo je teško od jedne osobe očekivati uspješnost i zavidnu vještinu u više kategorija, a objedinjavanje djelatnosti vještih osoba u cilju ostvarivanja željenih rezultata također je vještina. Timski rad je neophodan. Od ideje pa do njenog ostvarenja dug je put. Uspješan i relativno brz primjer ostvarivanja cilja je 'Google'. Zadali su si napraviti dobru tražilicu i ponuditi kvalitetne usluge - i to su vrlo uspješno uradili. Dakle, potrebna su poprilična znanja, vještina u prepoznavanja problema ili zadatka i jasna vizija njegovog rješavanja. Već je rečeno na da je program smišljeni skup instrukcija koje izvršava procesor. Smišljen je i logičan gledano sa čovjekove strane, ali gledano 'očima' procesora on nikad ne zna kakva je naredna instrukcija. Njemu je ENTROPIJA poprilična. Da bi se navedeno ublažilo gotovo svi uređaji računala u radu koriste neku svoju vlastitu brzu međumemoriju (cache) u koju se spremaju sadržaji srodni prethodnim instrukcijama ili podacima, kao nekakvo predviđanje moguće naredne zadaće i na taj način se ostvaruje brže dohvaćanje potrebitog.