Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności:

Witaj na forum graficznym Burning-Brushes.pl!
Zwycięzca SOTW#140 - CrimeS


Panel użytkownika

Forum graficzne Burning-Brushes.pl

Rozmówki o programowaniu  (Przeczytany 17364 razy)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Rozmówki o programowaniu
« dnia: Styczeń 23, 2010, 22:14:56 »
nie przypominam sobie takiego tematu na bb, ale mogę się mylić :P

tak więc, jak ktoś ma ochotę to możemy pogadać co nieco o programowaniu, językach, środowiskach itp : d
pochwalcie się w jakich językach programujecie, co umiecie, czego nie umiecie, czego byście chcieli się nauczyć itp :P
no to może zacznę ^^
ja tak ogólnie znam parę języków... , php, javascript, delphi/pascal, c++, python, perl i asembler :P
przynajmniej w nich coś robiłem, nic ambitnego póki co... jakieś tam kalkulatory, skrypty, proste programy itp
jako tako znam też ruby i lolcode xD ... nigdy w nich nic nie pisałem, ale trochę czytałem i wydają się całkiem fajne oba, szczerze polecam ;p
ostatnio czytałem dużo o językach realizujących paradygmat programowania funkcyjnego... np. taki Haskell (hardkor troche o.O) no i z nowszych Erlang, Scala i Groovy... póki co mi się dość dziwne wydają... ale zdobywają ostatnio sporą popularność (przynajmniej te 3 ostatnie), więc pewnie trochę czasu im poświęcę, zwłaszcza tej Scali bo wydaje się dawać duże możliwości jak się ją opanuje ^^
na chwilę obecną uczę się Javy i C#, dość podobne oba, no i oba nawet fajne, strasznie mnie w javie rajcuje możliwość pisania programów na telefony komórkowe (pralki i lodówki i inne takie XD)... no i fajnie się w niej nawet robi programy z graficznym interfejsem :D
chyba tyle jak na razie ode mnie :D teraz wy się rozpisujcie :D

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #1 dnia: Styczeń 24, 2010, 00:44:31 »
Dobry temat :)
Kiedyś uczyłem się SWI-Prolog i powiem że jest to badziew. Język jedno-wątkowy więc dużo na nim zrobic się nie da. Znam tylko JEDNĄ osobę która się tym zawodowo zajmuje i w środowisku dużo osoób ma z tego poprostu ubaw po pachy :3
C++/C to chyba podstawy i każdy rozpoczynający zabawe powinien te języki znac a minimalnie już podstawy.
Osobiście za Javą nie przepadam bardziej wolę C++ choc języki również podobne składniowo. Jak na złośc większośc programów na Uczelni muszę pisac w Javie choc są wyjątki gdzie język jest dowolny :) C# dzięki Bogu nie uczyłem się bo jest jedynie podróbka Javy zrobiona przez Macrosoft-a.
Cytuj
ostatnio czytałem dużo o językach realizujących paradygmat programowania funkcyjnego... np. taki Haskell (hardkor troche o.O) no i z nowszych Erlang, Scala i Groovy
Mam przedmiot "Języki paradygmaty programowania" i raz uruchomiłem program w języki Haskell i na tym moja przygoda z nim się skończyła. Jednak poznawałem możliwości OCAML-a jak i Pythona.
Cytuj
asembler
Szacun :) tak "nisko" zszedłeś :D

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #2 dnia: Styczeń 24, 2010, 14:22:51 »
Cytuj
Mam przedmiot "Języki paradygmaty programowania" i raz uruchomiłem program w języki Haskell i na tym moja przygoda z nim się skończyła.
no Haskell zbyt fajny nie jest z tego co zdążyłem zauważyć :D już te nowsze, Scala czy Groovy trochę lepsze bo one są trochę wzorowane na javie i korzystają z jvm, ale dla mnie i tak trochę dziwne, ale nie ma się co dziwić, do tej pory miałem styczność tylko z językami imperatywnymi : d

Cytuj
Szacun :) tak "nisko" zszedłeś :D
no zawsze jak tylko usłyszałem o programowaniu niskopoziomowym to chciałem spróbować :P no i wg mnie warto bo asembler jako język nie jest trudny :P trudne jest tylko zrozumienie architektury na którą ma być przeznaczony program, ale jak się ma jakieś dokumentacje, pomoce naukowe itp to można sobie śmiało dać radę :D a satysfakcja ze zrobienia działającego programu w asmie jest ogromna ^^

Moonmaker

  • VIP
  • *****
  • Stranger in a strange land
    • Zobacz profil
    • Moonmaker on dA
Odp: Rozmówki o programowaniu
« Odpowiedź #3 dnia: Styczeń 25, 2010, 23:31:04 »
ja powiem tylko że programowanie to nuda xd

Cytuj
I know what you're thinking. "Did he fire six shots or only five?" Well, to tell you the truth, in all this excitement I kind of lost track myself. But being as this is a .44 Magnum, the most powerful handgun in the world, and would blow your head clean off, you've got to ask yourself one question: Do I feel lucky? Well, do ya, punk?
Harry Callahan

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #4 dnia: Styczeń 25, 2010, 23:43:23 »
ja powiem tylko że programowanie to nuda xd
Dla mnie zwiedzanie jest nudne :)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #5 dnia: Styczeń 25, 2010, 23:48:46 »
co kto lubi ; d ... i zależy od podejścia i celów w jakim się pisze :P bo takie pisanie byle czego na potrzeby przemysłu czy biznesu faktycznie może być nudne... ale tworzenie np. własnego komunikatora, odtwarzacza plików multimedialnych czy gry komputerowej już nudne nie jest na 100% :P

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #6 dnia: Styczeń 25, 2010, 23:59:50 »
btw: Abik jak zrobic w Pythonie że po wczytanie liczby wymiernej jeśli w mianowniku będzie ZERO to wyrzuci wyjątek :)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #7 dnia: Styczeń 26, 2010, 13:56:49 »
to zależy jak sobie zaimplementujesz liczby wymierne bo nie są wbudowane w pythonie o ile się nie mylę :s chociaż są różne biblioteki matematyczne dodatkowe, które je dodają

tak na szybko można by zrobić coś takiego:

class Wymierne(object):
   def __init__(self, licznik, mianownik):
      self.licznik = licznik
      if mianownik != 0:
         self.mianownik = mianownik
      else:
         raise RuntimeError, 'Zero w mianowniku'

no i dodać tam jeszcze jakieś metody, żeby można coś z taką liczbą zrobić :P ... no i u mnie jak sprawdzałem to działa, chyba, że pomyliłem liczby wymierne z czymś innym xD

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #8 dnia: Styczeń 26, 2010, 16:41:59 »
Tak, ale co jesli chce żeby liczba Jedna liczba wymierna miała Jedną zmienną a nie tak jak u Ciebie osobna na licznik i mianownik ? :)
No i właśnie się zdenerwowałem bo na Uczelni ułameczki ładnie wchodziły a tutaj na chacie każdy ułamek jest równy 0 :)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #9 dnia: Styczeń 26, 2010, 23:29:57 »
takie coś zrobiłem:

class Wymierne(object):
   liczba = 0
   def __init__(self, licznik, mianownik):
      if mianownik != 0:
         liczba = licznik/mianownik
      else:
         raise RuntimeError, 'Zero w mianowniku'

no i później sobie tworze obiekt i jako argumenty podaje 1 i 3, jak próbuję wyświetlić pole liczba to też mi pokazuje 0 tak jak Tobie :O ... dziwna sprawa, powinno przecież pokazywać coś koło 0.33333 o.O

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #10 dnia: Styczeń 28, 2010, 19:18:38 »
heh śmiech na sali :)
żeby zaliczyć przedmiot o którym tutaj wcześniej pisałem to wystarczyło napisać w pythonie funkcje silnie obliczając ją rekurencyjnie i iteracyjnie :D
Abik pewnie byś takie cos potrafił :) a może z użycie reduce
Oczywiście inny mieli gorszą sytuacje :P

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #11 dnia: Styczeń 28, 2010, 21:31:32 »
:D
no rekurencyjnie byłoby tak:
def silnia(n):
   if n == 0:
      return 1
   else:
      return n * silnia(n-1)

a iteracyjnie chyba mogłoby być tak:
def silnia2(n):
   wynik = 1
   if n == 0:
      return wynik
   else:
      while n>0:
         wynik *= n * (n-1)
         n -= 2
      return wynik
ta iteracyjna niby też działa, ale jakoś brzydko wygląda o.O
ale zaliczyłbym ? xd
« Ostatnia zmiana: Styczeń 28, 2010, 21:33:59 wysłana przez Abik »

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #12 dnia: Styczeń 29, 2010, 01:07:02 »
Rekurencyjnie jest OK
Iteracyjnie zrobiłem z pętlą for
Kod: [Zaznacz] [nofollow]
def silnia_ite(x):
    wynik=1
    for i in range (x):
        wynik=wynik*(i+1)
    return wynik
mniej linijeczek od Ciebie i działa :)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #13 dnia: Styczeń 29, 2010, 14:25:44 »
nieźle, w ogóle nie pomyślałem, żeby zamiast odejmować 1, dodawać 1, przez to tam się później wzięło te dziwne n-=2 :P
no ale ogólnie nie myślałem, że takie rzeczy wystarczą, żeby zaliczyć przedmiot :P inne przedmioty też tak łatwo zaliczyć czy więcej trzeba się pomęczyć? ;p

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #14 dnia: Luty 02, 2010, 14:59:10 »
Ten przedmiot ma laborki i wykład.
Laborki zaliczyłem przez 100% obecności + te dwie funkcje silnii + program w javie(dziedzieczenie) + python(klasa wymierna)-to co się pytałem :)
a Wykład to UML-rachunek lambda i logika Hoera :)

Moja funkcja jest nawet szybka od Twojej mo u mnie czas jest równy theta(n) a u Ciebie theta(n^2) jeśli mnie pamięc nie myli :3

wszystko zależy od prowadzących ale osobiście się nie przemęczam :)

Już wiem czemu wpisując
Kod: [Zaznacz] [nofollow]
>>> 1/2
0
Otrzymywaliśmy 0, sprawa jest b. prosta ponieważ tutaj jest dzielenie dwóch liczb CAŁKOWITYCH zatem bez reszty.
Jeśli chcemy żeby wynik był taki jaki oczekumy czyli 0.5 to musimy wpisać
Kod: [Zaznacz] [nofollow]
>>> 1.0/2; 1/2.0
0.5
0.5
Jedna liczba musi być RZECZYWISTA :)
Teraz żeby to przenieść do jakiś funkcji czy klasy to przecież użytkownik nie będzie wpisywał liczb rzeczywistych tylko całkowite zatem najproście jest wynik "sFLOATować"
Kod: [Zaznacz] [nofollow]
a=input('Podaj a: ')
b=input('Podaj b: ')
print 'Wynik: ',float(a)/b
« Ostatnia zmiana: Luty 02, 2010, 15:03:14 wysłana przez Sympatyk »

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #15 dnia: Luty 02, 2010, 15:08:28 »
:D
ehh, to ładnie xd strasznie wkurzające takie mikro problemy czasem są w programowaniu :P no ale dobrze, że na to wpadłeś ^^

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #16 dnia: Luty 09, 2010, 14:23:31 »
Abik bo zaraz mnie cholera weźmie.
Jak zamienic plik pythona na wykonywalny?

Podobno py2exe jest kiepski na graficzne programy dlatego odpada.
Nawet przez CX-Freeze próbowałem ale Lipa

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #17 dnia: Luty 09, 2010, 18:53:54 »
no ja używałem py2exe tylko do konsolowych programów, więc nie wiem czy na pewno jest słaby w programach z gui, ale tu pisze, że daje radę też z gui: http://logix4u.net/Python/Tutorials/How_to_create_Windows_executable_exe_from_Python_script.html więc może warto spróbować? :P bo po za nim to za bardzo nie ma alternatyw niestety :/ :S

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #18 dnia: Marzec 04, 2010, 13:43:20 »
Nadeszła i ta chwila że ja zacząłem programowac w Asemblerze.
Ciekawa sprawa, kolega po 2h jak poznał ten język poszedł do tablicy :)
W sumie to nie jest on taki straszny jedynym problemem jest znajomośc kontrolera na którym go odpalimy. Gdzie jakie porty są ale na PWr wszystko jest ładnie napisane, tylko zastanawiałem się jak mogę w domu sprawdzic czy program działa nie mając kontrolera przy sobie? mogę jedynie sprawdzic krok po kroku ale to i tak lipa.
Abik jakie środowisko do asemblera masz? :)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #19 dnia: Marzec 04, 2010, 18:52:42 »
nasm i fasm :D fasm ma ekstra dokumentacje, dużo przykładowych programów, ogólnie ekstra jest, ale ja tylko pod x86 pisałem, pod żadne inne architektury nic nie robiłem :P

Sympatyk

  • VIP
  • *****
  • Master of science
    • Zobacz profil
    • Moje
Odp: Rozmówki o programowaniu
« Odpowiedź #20 dnia: Marzec 10, 2011, 01:38:09 »
Odkopie bo ciekawy temacik :)

Cytuj
Osobiście za Javą nie przepadam bardziej wolę C++ choc języki również podobne składniowo.
Nastawienie się zmieniło, aktualnie wole pisac w Javie niż w C/C++.
Poznałem ją trochę bardziej i teraz aplikacje tylko w niej piszę.

Doszedł "głupi" język jakim jest PHP.
Żadnych typów nie ma, nic nie trzeba wcześniej deklarowac.
Przejście z PHP do jakiegoś innego typu Javy jest ciężkie.

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #21 dnia: Marzec 10, 2011, 17:12:31 »
no z wyższego do niższego poziomu jest ciężkie, ale w drugą stronę jest bardzo przyjemne :D
a to, że nie trzeba typów przydzielać ma zalety i trochę odciąża, z resztą do małych rzeczy języki skryptowe się nadają :D do dużych ofc mniej :P

najlepszy i tak jest assembler! : D
« Ostatnia zmiana: Listopad 17, 2012, 18:01:04 wysłana przez Abik »

Odp: Rozmówki o programowaniu
« Odpowiedź #22 dnia: Sierpień 12, 2013, 12:42:30 »
cześć :D troszeczkę odświeże temat i powiem, że ciekawe rzeczy piszecie :D ja ogólnie coś próbuję w C++ (przedmiot w szkole), ale idzie ciężko, a nie mam na tyle motywacji żeby samemu się uczyć w domu, ale trzeba bedzie sie wziąć do roboty :)

Odp: Rozmówki o programowaniu
« Odpowiedź #23 dnia: Sierpień 12, 2013, 15:29:46 »
czyć w domu, ale trzeba bedzie sie w

Jeśli Cię to interesuje, to i motywacja się znajdzie :) Ważne byś nie poddał się widząc poradniki. Są one bowiem pisane przez ludzi już programujących dla (mimo dopisku "od podstaw") innych ludzi, którzy z programowaniem mieli do czynienia. Jeśli znajdziesz osobę, która Cię przez podstawy poprowadzi, to potem już z górki :)

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #24 dnia: Sierpień 13, 2013, 18:06:32 »
C++ mimo wszystko nie jest prosty, więc jakby co to polecam http://xion.org.pl/productions/texts/coding/megatutorial/ :D

Odp: Rozmówki o programowaniu
« Odpowiedź #25 dnia: Wrzesień 16, 2013, 11:33:53 »
C++ jest trudnym językiem bo nie ma tyle ułtwień co np java ale za to jest znacznie szybszy i zużywa mniej pamięci, Ja w c++ najwieksze problemy miałem ze wskaźnikami i wskaźnikami do wskaźników ;)
newbielink:http://www.kataloglokalny24.pl/centrum-rozwoju-osobistego---gabinet-psychoterapii/lekarz-psychiatra [nonactive]

Odp: Rozmówki o programowaniu
« Odpowiedź #26 dnia: Wrzesień 20, 2013, 16:47:28 »
Kilka dni temu zaczął się kurs "Functional Programming Principles in Scala" prowadzony przez samego autora newbielink:http://scala-lang.org [nonactive]'i (ma trochę ciężki akcent, ale da się go zrozumieć oraz nie jest tak, że oglądanie wykładów jest obowiązkowe; istnieje dużo innych źródeł, jak np. niedawno zaktualizowana newbielink:http://www.scala-lang.org/docu/files/ScalaByExample.pdf [nonactive](pdf) oraz newbielink:http://www.scala-lang.org/documentation/ [nonactive]). Wciąż można się zapisać lub zobaczyć materiały z poprzedniej edycji kursu (które na ten moment pokrywają się z materiałami aktualnie trwającego, łącznie z zadaniami): newbielink:https://www.coursera.org/course/progfun [nonactive]
Zdecydowanie nie jest to wstęp do programowania
Give sanity a longer leash  |  H+ 

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #27 dnia: Wrzesień 21, 2013, 22:27:42 »
Lysek kodzisz w scali? : >

Odp: Rozmówki o programowaniu
« Odpowiedź #28 dnia: Wrzesień 22, 2013, 00:45:53 »
Właśnie się uczę
Give sanity a longer leash  |  H+ 

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #29 dnia: Wrzesień 22, 2013, 22:07:17 »
kiedyś czytałem dużo dobrego o niej, ale nie miałem okazji spróbować. myślisz, że powinienem to zrobić? :D

Odp: Rozmówki o programowaniu
« Odpowiedź #30 dnia: Wrzesień 23, 2013, 01:52:29 »
Jeżeli nie znasz już innego podobnie mieszanego języka (obiektowy + funkcyjny) to zdecydowanie warto rzucić okiem co oferuje i jak się to ma w stosunku do już znanych Ci języków


Ale krótko mówiąc to Scala > all
« Ostatnia zmiana: Wrzesień 23, 2013, 01:55:44 wysłana przez Lysander »
Give sanity a longer leash  |  H+ 

Abik

  • VIP
  • *****
  • Amerykański plastik
    • Zobacz profil
Odp: Rozmówki o programowaniu
« Odpowiedź #31 dnia: Wrzesień 27, 2013, 00:19:44 »
Ale krótko mówiąc to Scala > all
:D
generalnie nie słyszałem innych opinii ludzi pośród ludzi, którzy jej spróbowali. może rzeczywiście coś w sobie ma
w każdym razie, miło słyszeć, że ktoś zaufany też ją poleca :*

Odp: Rozmówki o programowaniu
« Odpowiedź #32 dnia: Styczeń 05, 2014, 02:26:43 »
Późny update na temat kursu "Functional Programming Principles in Scala", o którym pisałem wcześniej: skończyłem, polecam. Wciąż uważam, że nie jest to wstęp do programowania, ale po fakcie uważam, że 1 - 0.5 roku doświadczenia z tą dziedziną wystarczy. W szczególności warte uwagi są zadania.

Wziąłem również udział w pierwszej edycji "Principles of Reactive Programming" ( newbielink:https://www.coursera.org/course/reactive [nonactive]), który był niejako kontynuacją "Functional Programming ..." - skończyłem, polecam. Trudniejszy, trochę niedopracowany, ale z pewnością doczeka się poprawek w kolejnych edycjach, które bez wątpienia pojawią się kiedyś w przyszłości.

Po tych kilku miesiącach intensywnego używania Scali (nie tylko w kursach!) przechodzę na odwyk z PHP (i AngularJS)
« Ostatnia zmiana: Styczeń 05, 2014, 02:29:54 wysłana przez Lysander »
Give sanity a longer leash  |  H+ 

Odp: Rozmówki o programowaniu
« Odpowiedź #33 dnia: Kwiecień 23, 2017, 13:45:19 »
Z doświadczenia wiem, że każdy język programowania posiada swoją charakterystykę i z tego względu możemy dostosować go do swoich potrzeb. Programuję strony internetowe i jestem przekonana, że rozszerzenia Javascriptu z pewnością mają swoją przyszłość.