Projekt badawczy Polska-Namibia 2010


po trzecie dziedziczenie po innych obiektach jest możliwe tylko w obiektowym programowaniu. Itp itd - niemal we wszystkich postach to jest wiec zacytuje tylko stad ;) (sorry j-mail).

Otoz nie jest to prawda. Programowanie obiektowe (OBP - Object Based Programming) wspiera tylko enkapsulacje. To o czym Wy piszecie to programowanie zorientowane obiektowo (OOP - Object oriented programming). To wlasnie tutaj jest enkapsulacja, dziedziczenie, polimorfizm dynamiczny, abstrakcja.

Druga notka Chmurek napisal ze C++ to C + obiektowosc. Otoz jest to obraza dla jezyka C++ :). C++ wspiera wiele paradygmatow programowania, a paradygmat imperatywny i zorientowany obiektowo to tylko czesc z mozliwosci. Wezmy np. potezna sile C++ jaka jest metaprogramowanie i ogolnie programowanie (kolejny paradygmat) generyczne.

Co do wydajnosci - coz - wystarczy wiedza o tym co kompilator produkuje (kazdy moze sobie sprawdzic), wiedza na temat samego jezyka, regularne profilowanie i programy zorientowane obiektowo napisane w C++ nie ustepuja pod wzgledem wydajnosci tym napisanym w C. A maja te przewage, ze sa znacznie latwiejsze w konserwacji i ponownym uzyciu w innych produktach itp.


Człowieku, ty masz w ogóle jakiekolwiek pojęcie o pisaniu systemów operacyjnych? A szczególnie o pisaniu jadra systemu? Raczej nie, bo jakbyś je miał, to byś nie wypisywał takich głupot...



Nie ma znaczenia od jakiego języka zaczniesz. Nauka programowania jako takiego powinna abstrachować od konkretnego języka. Na początek na pewno powinienś nauczyć się jakiegoś języka imperatywnego, czyli np. C, lub pascala. Później jakiś język obiektowy (C++, Ada, Java), bo to teraz jest praktycznie cały rynek komercyjny. Język programowania jest tylko pewnym sposobem zapisania rozwiązania jakiegoś problemu i to można bardzo łatwo i szybko zmienić, najważniejsze to nauczyć się znajdować te rozwiązania :)

Osobiście polecam na początek C i książkę Kernighana Ritchiego.
Powodzenia :)


Happy Debian user :)



Trudno to nazwać językiem, ja bym powiedział, że to są po prostu trochę bardziej rozbudowane ciągi formatujące, na wzór (powiedzmy, baardzo duże uproszczenie) polecenia z języka C: printf("Cośtam cośtam %d blablabla %s", i, napis). Nazywanie tego "językiem programowania" to przesada. Potocznie nazywa się go TAGZ.

Z formalnego punktu widzenia, jeśli jakkolwiek można by go przyporządkować, to ja bym powiedział, że jest to język imperatywny (w sensie, że "polecenia" są wykonywane sekwencyjnie, zmieniają wartości jakichś zmiennych itd.), ale to jest mocne naciąganie pojęć. Z pewnością nie jest ani obiektowy, ani deklaratywny, ani funkcjonalny. Ze względu na swoją "skryptowość" (cudzysłów bardzo na miejscu) na pewno jest interpretowany (a nie kompilowany). Jest też niestrukturalny. W wersji 0.8.3 można było używać trybu "C-like" a więc podobnego w zapisie i składni do języka C (potocznie nazwanego "Tagscript", np.:
if (var == 1) {print("var is one");
} else { print("var is not one"); }) Język C jest językiem imperatywnym, tak więc w tym wypadku można byłoby powiedzieć, że ten tryb był tak jakby językiem "imperatywnym".

Niby się o tym mówi "skrypty", ale one generalnie nie robią nic więcej jak przekształcają jakiś tekst na inny tekst. Tak więc najbardziej trafną odpowiedzią na twoje pytanie byłaby: "to nie jest żaden język programowania, tylko funkcja operująca na ciągach znaków i zwracająca ciągi znaków" :) A w ogóle, to skąd takie pytanie?




"Wykład nie zakłada u studenta znajomosci zadnego z wykorzystywanych
języków programowania. Nie ma także na celu nauczenia studentów żadnego z nich." Więc w jaki sposób tam się można nauczyć np. C++? Widziałem w tym drugim linku, że na zapisach są jakieś kursy z C++, ale tylko dla zaawansowanych.


przedmiot programowanie ( wg. wykładowcy powinien nazywać się "teoria języków programowania" ) nauczy Cię teorii potrzebnej do opanowania chyba każdego z współczesnych języków programowania(funkcyjne, imperatywne, logiczne ). język to tylko składnia i wkucie na pamięć biblioteki standardowej. żeby nauczyć się c++ idziesz sobie na kurs c++ i tam zaznajomisz się ze składnią. aby udowodnić, że rozumiesz materiał, na pracownię z programowania trzeba było napisać interpreter lub kompilator.

nasz wydział dopiero od poprzedniego roku się rozrósł, do tej pory wypuszczał ok 50 osób z tytułem licencjata, wydaje mi się, że dlatego nie UWr w rankingach(na EiA@PWr w poprzednim roku przyjęli ponad 400 osób, 3 razy więcej niż u nas , a jeszcze pozostaje IZ i PPT ).
oczywiście jeśli dasz sobie radę na UW, to lepiej tam iść, mnie ta uczelnia by nie chciała .




Zasady programowania są takie same we wszystkich językach.
We wszystkich imperatywnych chciales powiedziec? Jest roznica w zasadach przy prgroamowaniu w C, Smalltalku i Haskellu.



Ale ludzie, na imperatywnych pseudoobiektowych jezykach typu c++ czy java swiat programowania sie nie konczy. Zasady sa czesto inne. I zmienianie { na begin jest malym krokiem, ktory moze za was zrobic nawet komputer. Trzeba umiec przestawiac swoje myslenie zaleznie od jezyka.



" />
">@pawlik
Jeśli planujesz studia związane z informatyką, to polecam Ci raczej wzięcie mat kwadrat niż informatykę. Matematyka Cię nie ominie a zapewniam, że prof. Kuzior czy prof. Skupin Ci to lepiej wytłumaczą niż jakiś doktor mówiący do tablicy na uczelni. A z informatyki wiele nie wyniesiesz uwzględniając ilośc czasu na to poświęconą.


Chodziłem na specjalizacje z informatyki i zdecydowanie poczucia straconego czasu nie mam, aczkolwiek zdolność ścisłego myślenia na studiach informatycznych trudno przecenić, znajomość modułu graficznego TP niekoniecznie. (Choć zdecydowanie warto przyswoić sobie jakieś podstawy programowania przed rozpczęciam studiów na takim kierunku. Mówiąc podstawy mam na myśli jak działa funkcja warunkowa, pętla etc.. ).

A co do doktorów mówiących do tablicy, to polecam zapoznać się ze stroną http://studiainformatyka.ii.uni.wroc.pl/ Odnoszę wrażenie, że tutaj takich (chyba) nie ma (noo... może poza małymi wyjątkami ), niech najlepszą zachętą (:-)) będzie to, że po roku studiowania na UWr byłem w stanie samodzielnie napisać kompilator prostego imperatywnego języka do asemblera x86. Warto tam też zajrzeć, żeby zobaczyć czym w ogóle są studia informatyczne. (Przydatny może być też http://wazniak.mimuw.edu.pl/)


">Oczywiście pracujemy tylko na windowsie, środowisko pascala jest DOSowe. (w planach jest OpenSource'owe kółko informatyczne - organizowane przez uczniów).
jak widzisz - nic ciekawego. Osobiście uważam, że lepiej samodzielnie uczyć się C++ (co po godzinach robię)...


Za moich czasów pisało się w środowisku FP, które z całą pewnością DOSowe nie jest.



Jakiego języka skryptowego używa foobar,bo jest ich kilka :? :
* imperatywne
* obiektowe
* funkcyjne
* logiczne
* i inne

Poniżej wymieniono niektóre, popularniejsze języki programowania:

* ABC
* AIML <-- język do tworzenia botów
* Ada
* Algol
* ASN.1
* AS
* Asembler
* Awk (awk, gawk, mawk, nawk)
* BASIC
o Amos
+ Amos Professional
o GFA Basic
o GW-Basic
o QBasic
o QuickBasic
o FreeBasic
o True BASIC
o Turbo Basic
o Visual Basic
o VBA (Visual Basic for Applications)
o Visual Basic.Net
o VBScript
* bc
* BCPL
* BeFunge
* BETA
* BLISS
* Brainfuck
* C
* C--
* C++
* C# (czytaj: "C sharp" od angielskiej nazwy znaku muzycznego #, lub C hash)
* Caml
* Ch
* CHILL
* Clarion
* CLIPS
* Clipper
* COBOL
* CSS
* Cyclone
* D
* dc
* Delphi
* DOT
* E
* Elisp
* Eiffel
* Euphoria
* F#
* FORTH
* FORTRAN
* Gclisp
* Groovy
* Haskell
* HLA - "High Level Assembler"
* Icon
* InterCal
* Java
* Javascript
* Jean
* KL1
* Linda
* LISP
* Logo
* Lua
* M++
* m4
* Magik
* Malbolge
* MSIL (Microsoft Intermediate Language)
* ML
* Modula (Modula, Modula-2, Modula-3)
* Nemerle
* Oberon
* Objective C
* Ocaml
* Pascal
o Free Pascal
o Object Pascal (język będący podstawą środowiska Delphi)
o Turbo Pascal
* PEARL
* Perl
* Pike
* PHP
* PL/SQL
* PL/pgSQL
* PL/I
* PL/M
* PostScript
* Povray SDL (Scene Description Language)
* Progress
* Prolog
o Turbo Prolog
* Python
* RPG
* Rebol
* REXX
* Ruby
* SAKO
* SAS
* Scheme
* Scriptol
* sed
* Simula
* S-Lang
* SML
* Snobol
* powłoki: bash, csh, ksh, sh, zsh, ...
* Smalltalk
* Tcl
* teco
* tpu
* Unlambda
* Whitespace
* VarAq
Z góry Bardzo Dziękuję za odpowiedź :!:

P.S. wersja 0.83,mój nowy :P
http://1.blurg.com/i/0/2/8/6/0/t_028602500itled5.jpg



Szablon by Sliffka (© Projekt badawczy Polska-Namibia 2010)