Thief Forum
http://thief-forum.pl/

Programowanie - where to begin? O_o
http://thief-forum.pl/viewtopic.php?f=2&t=4514
Strona 2 z 4

Autor:  Dreen [ 02 lut 2008 17:31 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Black_Fox napisał(a):
Mniemam, że webmastering nie ma nic wspólnego z doborem platformy?


I tak, I nie. PHP dziala niemal tak samo na kazdej platformie. ASP jest dla serwerow ISS Microsoftu. Perl dziala chyba tak samo tu i tu choc pewnosci nie mam. JSP (Java Server Pages) - tu tez nie jestem pewien ale postawilbym na identyczna obsluge na roznych platformach.

Black_Fox napisał(a):
A poza tym chciałbym się skupić na jednej platformie, tyle, że nie wiem czy Windows czy Linux. :| Jakie są zasadnicze różnice? Co radzicie?

to juz twoj wybor ale mysle ze powinienes zaznajomic sie (nie zeby uzywac, ale napewno dobrze jest znac) z projektami Cygwin i/lub MinGW. Jak powiedzial moj przedmowca, podstawy sa wszedzie takie same.

Tak dla scislosci - dynamiczna strone mozesz napisac nawet w C++ jako cgi-bin, tylko ze to nie ma wiekszego praktycznego sensu ;)

Autor:  Gregorius [ 02 lut 2008 17:55 ]
Tytuł:  Re: Programowanie - where to begin? O_o

_OskaR napisał(a):
Black_Fox napisał(a):
A poza tym chciałbym się skupić na jednej platformie, tyle, że nie wiem czy Windows czy Linux. :| Jakie są zasadnicze różnice? Co radzicie?


Podstawy można złapać niezależnie od systemu. Pod Linuksem może być na początku trochę łatwiej (gcc)- piszesz program w notatniku i kompilujesz w konsoli. W przypadku bardziej złożonych programów, różnice mogą się jednak uwidocznić- korzystanie z innych bibliotek pociąga za sobą inny sposób ich obsługi.

I tutaj wielką przewagę ma niezależne (i darmowe) oprogramowanie :ok

Korzystając z Visuala skazujesz się na Windows. Za to kompilator gcc jest na wszystkie znane platformy, tak samo ze środowiskiem Code::Blocks.
To samo z bibliotekami, te najbardziej znane i najlepsze jak QT, OpenGL, wxWidgets, SDL, Allegro itp. itd. są w wersjach na Windows i Linuxa. Jeżeli się z nich korzysta, nie ma większych problemów z przenoszeniem programów między systemami.
Znam to z własnego doświadczenia, wielokrotnie pisałem programy kawałkami na Windows i kawałkami na Linuxie, bez większych problemów :)

Nie wspomnę już o Javie, gdzie nie ma (albo przynajmniej z założenia nie powinno być) żadnych różnic niezależnie od platformy z której się korzysta.

A jeśli chodzi o edytor to zazwyczaj korzystam z VIMa http://vim.sf.net, który też oczywiście jest na wszystkie platformy.

Spójrzcie na moją stronkę http://www.darkgreg.yoyo.pl/thiefex/tex_en.html, ostatni screen z mojego programiku ThiefEx był zrobiony na Linuxie, reszta na Windows :)

Autor:  Black_Fox [ 13 lut 2008 17:36 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Czy da się zrobić, aby Microsoft Visual C++ działał w języku polskim? Jest jakiś patch, łatka, a może opcja?

Autor:  marek [ 13 lut 2008 19:14 ]
Tytuł:  Re: Programowanie - where to begin? O_o

a po co? i tak wszystkie helpy masz po angielsku, a każda polonizacja musiałaby być "niepełna" - charakterystycznych nazw brzmiących "po angielsku" nie można przekłądać na polski, bo straciłoby się kompatybilność z wersją angielską.

Autor:  _OskaR [ 13 lut 2008 19:38 ]
Tytuł:  Re: Programowanie - where to begin? O_o

A po co w ogóle to polonizować? Przykłady (opisy) i książki są po polsku- na forach też jest dużo ciekawych informacji- czego więcej chcieć? 99,99% obsługi Visuala to pisanie programu. Wystarczy znać parę opcji w menu i to wszystko- już Thievery jest trudniejsze :))

Autor:  Black_Fox [ 13 lut 2008 21:03 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Nie dla mnie.

Autor:  waldeq [ 13 lut 2008 21:17 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Którego Visuala pobrałeś? 2008 express edition? Może w ogóle opisz jakie masz problemy w jego użytkowaniu.

Autor:  _OskaR [ 13 lut 2008 21:30 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Black_Fox napisał(a):
Nie dla mnie.


W takim razie od razu daję sposób na program w Visualu:
File->New, zakładka Project->Win32 Console Application
Project name- nazwa projektu
Location- lokalizacja na dysku
Dajesz ok, a potem najlepiej A "Hello..." application.
Ok, a potem po lewej, w pionowym oknie widać nazwa_projektu classes- rozwijasz to, potem dalej rozwijasz i klikasz na main...- z takim zajeb&stym różowym sześcianikiem. W oknie głównym masz już gotowy kod. Modyfikujesz- można zrobić pusty dokument, ale na początku tak jest wygodniej :-) Możesz to oczywiście zostawić i odpalić- górny pasek->Build->Rebuild all (albo compile), a potem Execute... i odpalasz program, a na HDD masz program w postaci pliku exe. I to jest wszystko- ew. File->Save :-D
Gdyby Visual był spolszczony, i tak byś na początku nie skorzystał z innych opcji ;)

Autor:  Black_Fox [ 13 lut 2008 23:43 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Microsoft Visual C++ 2008 Express Edition. A on w ogóle darmowy jest?

Autor:  waldeq [ 14 lut 2008 12:48 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Darmowy jest także do użytku komercyjnego. 8-)

Autor:  Black_Fox [ 14 lut 2008 14:44 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Pytam, bo coś wyskakiwało mi przy pierwszym uruchomieniu o rejestracji... O co z tym chodzi?

Dev lepsiejszy, taki... lekki. :P

Autor:  waldeq [ 14 lut 2008 20:35 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Black_Fox napisał(a):
Pytam, bo coś wyskakiwało mi przy pierwszym uruchomieniu o rejestracji... O co z tym chodzi?

Dev lepsiejszy, taki... lekki. :P

Wiesz, że nawet nie zwróciłem na to uwagi. :P Ale nie bój żaby, za Visuala w wersji express nie musisz płacić ani grosza bez znaczenia na jego zastosowanie.

Hmm chcesz się poddać "urokowi" Deva? Trzeba walczyć. 8-)

Autor:  _OskaR [ 14 lut 2008 22:23 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Black_Fox napisał(a):
Dev lepsiejszy, taki... lekki. :P


Problem w tym, że nie wszystko działa w Devie. Zrobisz program bez błędów, a Dev powie, że są. Kij w d... z takim programem.

Autor:  waldeq [ 14 lut 2008 22:55 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Problem Deva polega również na tym, że nie tylko widzi błędy kiedy ich tak naprawdę nie ma ale także, że czasem je także przepuszcza kiedy istnieją. Poza tym ma on bardzo nietroskliwy kompilator i nie zwraca zbytnio uwagi o niejawną konwersję i tego typu sprawy (żadnych ostrzeżeń, pod Visualem zawsze mam ich po 150). Nie dla profesjonalistów.

Autor:  marek [ 14 lut 2008 23:42 ]
Tytuł:  Re: Programowanie - where to begin? O_o

ale narzekacie - Visual tez widzi błędy, kiedy ich nie ma.

A co do widzenia nieistniejących błędów: zwykle wystarczy przekompilować cały kod i po wszystkim :)
No i najważniejsze: jest wyjątowo lekki i szybki, dodatkowo interpretuje to co napiszemy dosłownie, a poprawnie napisany kod musi działać. W sumie bym go pewnie nie polecał, ale jest najlżejszym z programów, o kórych wiem, że mogę połączyć WINAPI, OpenGL i WinSock - Borlandy sie wykładają w OpenGl (dla Api i WinSocka mają swoje zamienniki), a Visual jest wooooooooooolny.

Autor:  Black_Fox [ 15 lut 2008 13:12 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Czyli Ty mareczku dłubiesz w Devie, tak? :)

Autor:  waldeq [ 15 lut 2008 17:43 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Nie narzekam tylko wyrażam swoją opinię kierując się wszelkimi przeżyciami jakie miałem przyjemność zaznać w czasie rocznego używania Deva. :-D Żeby nie było powiem, że Visual także nie jest jakiś niezwykle idealny (bo takich rzeczy nie ma) i też czasem się na niego wkurzę szczególnie jak mi się wyłączy albo zawiesi. :)) Jednak nie zdarza się to co 5 min bym miał się zniechęcać, dlatego pozostaje przy nim pomimo, że czasem może być zbyt "troskliwy". :P

Autor:  marek [ 15 lut 2008 19:59 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Black_Fox napisał(a):
Czyli Ty mareczku dłubiesz w Devie, tak?

krótkie (konsolowe) w Devie (chociaż projekt z informatyki też pisałem w Devie, bo akurat do niego miałem poradnik do OpenGL), mające wyglądać w Borland C++Builder6. Jakoś nie chce mi się czekać parę minut na odpalenie Visuala, potem po pół minuty na każdą kompilację. A jak teraz robiłem format to go nawet nie zamierzam instalować, bo mi totalnie zawali rejestr.

Autor:  Black_Fox [ 16 lut 2008 22:11 ]
Tytuł:  Re: Programowanie - where to begin? O_o

To ja już nie wiem którego IDE używać, te to tamto jeszcze coś, bleh...

Może z innej beczki, jak wygląda tworzenie stronek WWW, też jest... "IDE"? Jeśli tak to jakie polecacie? :)

Autor:  Maveral [ 16 lut 2008 22:22 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Wystarczy w sumie zwykły notatnik hehehe Jakoś nie polecam edytorów i tym podobnych programów, bo strasznie mieszają nam w kodzie. Np. FrontPage, to potrafi dodać tyle niepotrzebych liniii do kodu, że poprawiać po nim to katorga. Oczywiście jedne edytory więcej mieszają, drugie mniej, ale w sumie się zraziłem ;)

Chyba tylko w AS robi się wygodniej na Flashu.

Autor:  Dreen [ 17 lut 2008 15:48 ]
Tytuł:  Re: Programowanie - where to begin? O_o

do jezykow skryptowych przy pracy z www polecam jedynie lekki edytor tekstowy z kolorowaniem skladni, numerami linii, wsparciem dla wciec w kodzie itd. Przyklady: Notepad++, SciTE. Istnieja IDE jak np Aptana ale zaczac lepiej od zwyklego edytora. I stronic od windowsowego notatnika.

Autor:  Maveral [ 13 sty 2009 16:14 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Ja zacząłem zabawę z Javą. Zakupiłem książkę Horstmann'a "Java. Podstawy" i jak na razie jestem zachwycony. Język bardzo prosty, wręcz intuicyjny, bardzo elstyczny i... obiektowy do bólu. Ta ostatnia zaleta bardzo mi się podoba, ułatwia znacznie życie i ogolnie takie tam ;) Do tego Eclipse i można jechać z tym koksem. Mam nadzieję, że niedługo przerobię całą książkę, a w międzyczasie ukaże się tom drugi "Java. Advanced Features". Jakby ktoś chciał zacząć uczyć się Javy to polecam wlaśnie Horstmann'a. Miałem od kumpla "Thinking in Java", ale treść tego tomiska wydała mi się mniej przystępna.

W związku z zainstalowaniem u siebie linux'a, chciałbym zapytać czy programowanie w bash'u przydaje się na szerszą skalę, czy tylko do takich "skryptów własnych", że się tak wyrażę?

Autor:  Black_Fox [ 13 sty 2009 17:15 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Cytuj:
W związku z zainstalowaniem u siebie linux'a, chciałbym zapytać czy programowanie w bash'u przydaje się na szerszą skalę, czy tylko do takich "skryptów własnych", że się tak wyrażę?

To zależy.
Jeśli chcesz zostać ekspertem Linuksa to jak najbardziej.
Jeśli jesteś entuzjastą to nie trać na to czasu. Skrypty można znaleźć w Sieci.
Ogólnie nawet jeśli będziesz musiał pracować jako programista na platformie Linuks to nie musisz znać basha.
Skrypty basha służą do ułatwienia współpracy z systemem. Poza tym to jest język powłoki.

Autor:  Maveral [ 01 lip 2010 16:16 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Hej. Wczoraj tak kombinowaliśmy z kumplem czy z poziomu DOS da się stworzyć skrypt który:
1. Wyciągnie z nazwy pliku tylko jego część (np. z pliku "Maveral_rzadzi" wyciągnie tylko "rządzi")
2. Skompresuje tenże plik pod nazwą zwierającą wyciągniętą wcześniej część nazwy z punktu 1 (np. "Adam_jest_fajny_wiec_rzadzi" gdzie "rzadzi" jest doklejane z punktu 1).

W sumie wysmażyłem działający skrypt, ale muszę wywoływać podprogram, a chciałbym mieć to w jednym bat'cie.

skrypt.bat
Kod:
ECHO OFF
C:
cd "\Program Files\7-Zip\"
FOR /R "D:\Mariusz\szkola\6 semestr\SQL Server\Wyklady\". %%F in (*.pdf) do SET zm=%%~nF&CALL C:/KompresjaPDF/etyk.bat
PAUSE


etyk.bat
Kod:
ECHO OFF
SET zm1=%zm:~3,9%
7z a -tzip -pmaveral "D:\Mariusz\szkola\6 semestr\SQL Server\Wyklady\"Maveral_poradnik_%zm1%.zip -ssw "D:\Mariusz\szkola\6 semestr\SQL Server\Wyklady\"%zm%.pdf


Próbowałem część z etyk.bat wpakować do skrypt.bat oddzielając kolejne komendy znakiem "&", ale przy większej ilości "&" coś się kaszani i niestety nie dałem rady tego wpakować do jednego bata. Może ktoś się już bawił DOSem i miałby jakieś rozwiązanie?

Autor:  waldeq [ 24 sty 2011 20:57 ]
Tytuł:  Re: Programowanie - where to begin? O_o

Być może znajdzie się ktoś kto udzieli mi odpowiedzi na trapiące mnie pytanie. Dotyczy ono dotyczy semaforów i problemu producent-konsument. Poniżej dałem uproszczony kod realizujący to zadanie, gdzie proces macierzysty jest producentem zaś potomny utworzony przy pomocy funkcji fork() konsumentem. Sam problem rozwiązałem natomiast jest jedno pytanie:
Gdy liczba kroków pętli przekroczy 32767 w producencie przy opuszczaniu semafora pojawia się błąd dotyczący przekroczenia jego wartości (ERANGE). Nie mam pojęcia dlaczego gdyż zgodnie z tym co pojawia mi się na ekranie przyjmuje on wartość 0 lub 1. Wiem, że ma to jakiś związek z flagą SEM_UNDO, którą używam do operacji na semaforach. Gdy ją wyzeruje to błędu nie ma. Poniżej kod:
Kod:
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include <errno.h>

#define LOOPS 40000

//********************************************
// Usuń zbiór semaforów.
//********************************************
void semrm(int semid)
{
    if (semctl(semid, 2, IPC_RMID) == -1)
    {
        perror("Błąd! Nie można usunąć zbioru semaforów: ");
        exit(EXIT_FAILURE);
    }
}

//********************************************
// Opuść semafor.
//********************************************
void semp(int semid, int semnum)
{
    int r;
    struct sembuf buf;
    buf.sem_flg = SEM_UNDO;
    buf.sem_num = semnum;
    buf.sem_op = -1;
    do
    {
        r = semop(semid, &buf, 1);
    } while(r && errno == -1);
    if (r == -1)
    {
        perror("Nie można opuścić semafora: ");
        printf("semid = %d\n", semid);
        printf("sem1val = %d\tsem2val = %d\n", semctl(semid, 0, GETVAL), semctl(semid, 1, GETVAL));
        exit(EXIT_FAILURE);
    }
}

//********************************************
// Podnieś semafor.
//********************************************
void semv(int semid, int semnum)
{
    int r;
    struct sembuf buf;
    buf.sem_flg = SEM_UNDO;
    buf.sem_num = semnum;
    buf.sem_op = 1;
    do
    {
        r = semop(semid, &buf, 1);
    } while(r && errno == -1);
    if (r == -1)
    {
        perror("Nie można podnieść semafora: ");
        exit(EXIT_FAILURE);
    }
}

//********************************************
// Ustaw wartośc dla semafora.
//********************************************
void setval(int semid, int semnum, int value)
{
    if (semctl(semid, semnum, SETVAL, value) == -1)
    {
        perror("Błąd! Nie można ustawić wartości semafora!");
        semrm(semid);
        exit(EXIT_FAILURE);
    }
}

int main(int argc, char **argv)
{
    key_t key;     // Klucz komunikacji międzyprocesowej.
    int semid;
    int i = 0;

    key = ftok(".", 'B');
    if (key == -1)
    {
        perror("Błąd! Nie można pobrać klucza: ");
        return EXIT_FAILURE;
    }

    semid = semget(key, 2, 0600 | IPC_CREAT /*| IPC_EXCL*/);
    if (semid == -1)
    {
        perror("Błąd! Nie można utworzyć zbioru semaforów: ");
        return EXIT_FAILURE;
    }

    /* Ustaw wartości semaforów. */
    setval(semid, 0, 1);
    setval(semid, 1, 0);

    switch (fork())
    {
    case -1:
        perror("Fork error: ");
        semrm(semid);
        return EXIT_FAILURE;
    case 0:
        while (i < LOOPS)
        {
            printf("value1 = %d\n", semctl(semid, 1, GETVAL));
            semp(semid, 1);
            ++i;
            printf("KONS: %d\n", i);
            semv(semid, 0);
        }
        printf("semid = %d\n", semid);
        semrm(semid);
        break;
    default:
        while (i < LOOPS)
        {
            printf("value0 = %d\n", semctl(semid, 0, GETVAL));
            semp(semid, 0);
            ++i;
            printf("PROD: %d\n", i);
            semv(semid, 1);
        }
    }

    return EXIT_SUCCESS;
}

Strona 2 z 4 Strefa czasowa: UTC [ DST ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/