http://lmgtfy.com/?q=json+generator
pierwsze narzędzie spoko tylko trzeba dodać regułkę żeby wygenerowało X obiektów
Wersja do druku
http://lmgtfy.com/?q=json+generator
pierwsze narzędzie spoko tylko trzeba dodać regułkę żeby wygenerowało X obiektów
siema, w jaki sposob najlepiej przeprowadzic synchronizację z lokalnej bazy danych (SQLite) z bazą danych zewnętrzną (SQL Server lub SQL Azure). Czytałem, ze niezlym sposobem synchronizacji jest replikacja ale nie wiem czy jestem w stanie to zaimplementowac w kodzie programu (C#). No i kolejne sprawa, ze synchronizacja powinna odbywac sie w 2 strony, ze mamy mozliwosc wyslania danych do bazy danych online oraz pobrania z online do lokalnej. Nie wiem jak to zgrabnie nazwac w ustawieniach ;s
Replikację implementuje się przez bazę danych przecież ( chyba, że nie chcesz takiej xD )
A konkretniej tutaj mówimy o replikacji master-master. Nie wiem czy da się zrobić to na poziomie bazy zważywszy na użycie SQLite i SQL Server/SQL Azure ( ja używam w 99% mysqla only xD ), ale jeśli nie, to bardzo łatwo możesz zaimplementować replikację na poziomie DBAL.
Siemka, potrzebuje pilnie wytłumaczenia alokacji pamięci. Mam program, ale za cholerę nie wiem czemututaj są "*". Jest ktoś w stanie wytłumaczyć "*" w tym przykładzie, który podał + to gdzie jest "tablica1[i]?Kod:tablica1 = (int**) malloc(sizeof(int*) * wiersz1);
Kod://Alokowanie pamieci dla pierwszej tablicy
printf("Wykonuje alokacje pamieci dla pierwszej tablicy...\t");
tablica1 = (int**) malloc(sizeof(int*) * wiersz1);
for(i=0; i<wiersz1; i++)
{
tablica1[i] = (int *) malloc(sizeof(int) * kolumna1);
}
tworzysz tutaj tablice wskaznikow, int** oznacza wskaznik na wskaznik na integer. Czyli na chłopski łeb WSKAZUJESZ na element tablicy, który jest wskaźnikiem WSKAZUJĄCYM na integer, stąd **. Jak pieprze glupoty to sorry, nienawidzę malloca
a tablica1[i] jest gdzies na stercie
wiesz co, chce to wszystko robic z poziomu aplikacji myslalem o zaimplementowaniu wyzwalaczy albo procedur na update/insert/delete w bazach danych i po prostu wywyolywac je w programie ale nie wiem czy to nie jest wymyslanie koła na nowo
Ostrzegam, pamięcią rzaaadko się bawie bo rzadko piszę w C++, więc powiem na podstawie tego, co ja wiem i ( wydaje mi się ) jest poprawne.
Tutaj alokujesz pamięć o wielkości int* ( czyli 4 bajty na win32 i 8 bajtów na x64 ) razy wiersz1 ( czyli dla wiersz1 = 5 np będzie to 5 * 4 = 20 bajtów ).Kod:tablica1 = (int**) malloc(sizeof(int*) * wiersz1);
Int* znaczy tyle co ,,wskaźnik na Int". Natomiast Int** to po prostu "Wskaźnik na wskaźnik na int". Więc twoja tablica1 to wskaźnik na wskaźnik na int.
Teraz, masz:
I z tego co ja rozumiem, to tutaj po prostu ten pierwszy ,,wskaźnik" jest wyciągany ( tzn masz dostęp do komórki pamięci, na którą wskazuje pierwszy wskaźnik ) i tam jest zapisywany ten drugi wskaźnik, który będzie już bezpośrednio dla inta.Kod:for(i=0; i<wiersz1; i++)
{
tablica1[i] = (int *) malloc(sizeof(int) * kolumna1);
}
Trochę masło maślane, mam nadzieję, że mniejwięcej zrozumiałeś xD
uwaga: malloc w cpp zwraca VOID, a w c zwraca adres zaalokowanego obszaru pamięci
dlatego w cpp w 99.9999% przypadków new da oczekiwany rezultat
Czy w c++ da się jakoś zmienić rozmiar dynamicznie zadeklarowanej tablicy czy trzeba zrobić tymczasową tablicę o nowym rozmiarze, skopiować tam zawartość starej, usunąć starą, jeszcze raz stworzyć nową i dopiero wtedy tam wkleić zawartość tymczasowej?
ten kod znajduje wszystkie te same rekordy na dwoch listach, a jak zaimplementować listę, ktora sklada sie tylko z tych roznych elementów? (newPatients)Kod:var equalsPatients = onlinePatients.FindAll(x => localPatients.Exists(y => y.PatientGuid == x.PatientGuid));
Czytaj te które mają rózne Guidy?
?Kod:var newPatients = onlinePatients.FindAll(x => localPatients.Exists(y => y.PatientGuid != x.PatientGuid));
probowalem, zwraca zawsze true bo zawsze ktorys element na liscie drugiej ma inne Guid od porównywającego.
Rozwiązałem to tak:
troche brzydkie ale dziala ;sssKod:foreach (var item in localPatients)
{
if(onlinePatients.Exists(x => x.PatientGuid==item.PatientGuid))
equallyPatients.Add(item);
else
newPatients.Add(item);
}
Alex, da sie byc podłączonym do 2 API jednoczesnie?
Jak w c++ zmniejszyć rozmiar dwuwymiarowej tablicy dynamicznej z np 5x5 do 1x1?
Generalnie to się nie da, musisz zrobić nową, albo olać fakt że jest 5x5 i używać jak mniejszej.
Jak Ci bardzo zależy to możesz tym sie pobawić, ale musisz wywołać oddzielnie na każdym wierszu, potem na samej tablicy, no i działa tylko jak była robiona przez malloc, a nie new.
A dobrać się do adresu po malloc/calloc w cpp NIE DA afaik, i TRZEBA używać new
chyba, że ktoś mi wyjaśni, jak to zrobić dostając w twarz voidem jako zwrotką z malloca
@Rzulf
Napisałem Ci na szybko takie coś.
@zakiusKod:template<class T>
void copy2dArray(T** target, T** source, int xDim, int yDim)
{
for (int x = 0; x < xDim; x++)
{
for (int y = 0; y < yDim; y++)
target[x][y] = source[x][y];
}
}
int main()
{
int sizeX = 5;
int sizeY = 5;
int** ary = new int*[sizeX];
for(int i = 0; i < sizeX; ++i)
ary[i] = new int[sizeY];
for (int x = 0; x < sizeX; x++)
{
for (int y = 0; y < sizeY; y++)
ary[x][y] = 66;
}
int** ary2 = new int*[1];
for(int i = 0; i < 1; ++i)
ary2[i] = new int[1];
copy2dArray(ary2, ary, 1, 1);
//TODO: cleanup
return 0;
}
Tak, ale możesz wskazać miejsce gdzie operator new ma stworzyć obiekt.
Kod:class Foo { };
int main()
{
Foo* f1 = new Foo;
Foo* f2 = new(f1) Foo;
assert((int)f1 == (int)f2);
return 0;
}
masz tutajKod:int **tab = new int*[5];
for(int i=0;i<5;i++)
tab[i] = new int[5];
//wypelnianie
for(int i=0;i<5;i++)
for(int j=0;j<5;j++)
cin >> tab[i][j];
//nowa tablica
int **tmp = new int*[1];
for(int i=0;i<1;i++)
tmp[i] = new int[1];
//wypelnianie
for(int i=0;i<1;i++)
for(int j=0;j<1;j++)
tmp[i][j]=tab[i][j];
delete[] tab;
tab=tmp;
@szulak ; ?
@Alex Fortune
@Gray
Gray ma racje, przecież to ten sam header (w C includujesz stdlib.h, w C++ cstdlib, który jest de facto tym 1.). Malloc i w C, i w C++ zwraca pointer na blok zaalokowanej pamięci.
Przecież jak używałem kodu z c w cpp to nie działało, i nawet znalazłem takie piękne wyjaśnienie dlaczego w internetach kiedyś, ale teraz cpp reference mówi inaczej
thehell...
Siema, mam zrobić coś w stylu system rezerwacji biletów dla kina, w SQL i teraz pytanie: czy w SQL jest możliwość zdefiniowania listy/wektora/czegoś w tym rodzaju wewnątrz tablicy? Bo mam pomysł zrobić to mniej więcej tak:
Da radę to tak zrobić? Czy jest jakiś inny sposób? Ja noob w sqlKod:Tablica sala:
idSala integer primary key not null
rząd1[12] bool (0 - miejsce wolne, 1 - miejsce zajete)
rząd2[10] bool
rząd3[12] bool
...
rząd10[12] bool
Nie lepiej/łatwiej byłoby pamiętać które miejsca są zarezerwowane?
A co do pytanie to raczej nie. Szczególnie, jeżeli w kinie masz różne rozmiary sal, z różną ilością rzędów.
Kiedy wg Was lepiej używać przy separacji użytkownik - administrator, w systemach, aplikacjach wieloosobowych flagi isAdmin w tabeli users, a kiedy różnych tabel admins i users, a co za tym idzie jakiegoś ukrytego, zewnętrznego okna logowania dla adminów? Czy może używacie zawsze jednej metody z tych dwóch?
Jak admin ma podstawowe prawa usera i jego pola, ale jest jeden lub niewielu w stosunku doliczby userow to tabela admins z id userów z prawami admina works IMO
I używam jednego logowania i w CP usera admin ma więcej
Wadą korzystania z flag boolowskich typu isAdmin jest to, że nie bardzo mamy zachowaną w bazie historię tego, kiedy i przez kogo taka flaga została nadana użytkownikowi. Lepszym rozwiązaniem jest stworzenie tabeli user_admins z kluczem obcym user_id i jakimi danymi się chce - w szczególności w najprostszym wypadku może być tam tylko jedna kolumna ;). W ten sposób administrator pozostaje użytkownikiem, a ewentualna 'elewacja' uprawnień i sprawdzenie ich to kwestia (w przypadku gorliwym) prościutkiego joina, lub też (w przypadku leniwym) jednego dodatkowego zapytania SQL ;).
Pozdrawiam
Killavus
No zależnie od potrzeb, jak planujemy mieć kilka poziomów dostępu i każdy z nich może rozdawać do swojego poziomu to jedno,a jak jest 1 admin ale z możliwością dodania przez ręczną edycję bazy drugiego to drugie
Dla mnie bardzo dużą zaletą jest to, że informacja nt. adminów (nawet sprowadzająca się do byle "jestem adminem", czyli jednokolumnowa tabelka) jest totalnie oddzielona od wiedzy nt. użytkowników, co nawet na poziomie RDBMS pozwala na zmniejszone związanie koncepcji administratora i użytkownika. W szczególności dla partii systemu które 'nie znają' pojęcia administratora taki admin jest po prostu użytkownikiem, a dla części dla administratorów explicite zaciągamy sobie tą informację.
Ja osobiście bardzo lubię podejście lansowane przez DCI/DDD w tym temacie, także dla mnie to ogromny win ;).
Pozdrawiam
Killavus
No wiadomo, że różne wymagania wymagają różnych metod.
Jeśli jest adminów czy nawet userów o podniesionym accesie relatywnie niewiele do pozostałych to dodatkowa tabela ładowana tylko w razie konieczności sprawdzenia dostępu wygląda sensownie, chociaż tak tfs trzyma zarówno dla konta jak i postaci group_id w głównym rekordzie, a można przecież założyć, że not set oznacza najniższy i mieć jednak "nieco" mniej danych. Chociaż wtedy sprawdzenie dostępu nie ogranicza się do prostego porownania zwrotki ze zworcem, a do sprawdzena, czy cokolwiek w ogóle z bazy wraca najpierw, a później dopiero co
Jutro mam rozmowę kwalifikacyjną na stanowisko programisty Java(Android) i PHP. Ktoś podpowie ile można zawołać? Pierwsza praca na pełen etat, zdalnie (ze względu na studia dzienne). Jakąś przewagę mam, bo sami się do mnie zgłosili. Wcale nie szukałem pracy, nie składałem CV, poszło słowem szeptanym że się tym zajmuję.
Zależy całkowicie od Twojego doświadczenia.
Ja mając parę lat freelancerki za sobą i całkiem pokaźne CV ale brak doświadczenia etatowego dostałem koło 5000 brutto ( no to z 4k netto uwzględniając dość spore benefity ) , teraz przechodzę do drugiej pracy i wyjdzie mi prawie dwa razy tyle. Ale to są odpowiednio Praga i Warszawa więc stolice, w Twoim województwie to może być trochę mniej.
Ogółem to zgodzilbym się z szulakiem, że 3.5-5k brutto jest całkiem w porządku na pierwszą.
Witam.
Mam zamiar rozpocząć studia inf na politechnice, ale nigdy nie miałem styczności z programowaniem i jestem w ogóle zielony jak ogórek szklarniowy.
Chce się pouczyć samodzielnie w domu programowania, aby mieć lżej na studiach. I pytanie do Was. Od jakiego języka zacząć? Czytałem na internecie i kilka osób poleca na początek C. Jedna z osób podała taki tytuł książki do samodzielnej nauki.
Spis treści tej książki.
Proszę o opinie. A jeśli z czymś się nie zgadzacie to o uzasadnienie.
pzdr. green bagi czekajo
Wszystko zależy od profilu uczelni. U mnie duży nacisk położyli na C# i praktycznie tylko w tym piszemy.
Specjalizacja decyduje o tym na jaki język będzie położony szczególny nacisk?
W sumie tak, ale to program musisz zobaczyć
Zaczynać od c nie musisz, cpp z ręcznym zarządzaniem pamięcią da w sumie to samo
ewentualnie java czy cs,a le warto coś umieć wcześniej
Ale skąd wiesz na podstawie specjalizacji że będzie końcowo wykorzystywany c# a nie java? ;d Nie potrafię sobie tego wyobrazić.
U nas jest dowolność, prawie zawsze można wybierać w czym się chce pisać chyba, że chodzi o konkretną technologę (Django czy Android).
Ale IMO od C++ warto zacząć.
@down @Tatasek ;
W moich czasach(xd) polecano Od zera do gier kodera i Symfonię Grębosza.
@down @Tatasek ;
Ogólnie na początku z tego co się orientuję to wszędzie jest C++ (chyba, że gdzieś został Pascal ;d).
Ale wydaje mi się, że wybór języków później to sprawa zależna od prowadzących. Jeden powie że jemu to lata w czym będzie pisane (bo nie zna żadnego języka ;d), a drugi będzie fanboyem javy i nie będzie nic innego akceptował ;d
A najlepiej to znajdź forum kierunku/grupę na fb i tam podpytaj ludzi.
Czyli, według Was powinienem zacząć od C++? Znacie, może jakieś dobre książki wprowadzające laików w ten temat? Pzdr
@edit
Dobra poczytałem na necie i wiele osób poleca "Symfonie" i "Od Zera do Gier..."
I teraz zapytam Was. Co wybrać z tych dwóch lektur?
@edit2
Tutaj mam rozkład zajęć całego wydziału i pod pozycją F1 jest informatyka 1 rok.
Rozkład
Co możecie mi powiedzieć o tym rozkładzie? Da się z niego wywnioskować na jaki język kładą nacisk czy raczej jak to mówił Absherr ; do wyboru do koloru?
@Tatasek
http://helion.pl/ksiazki/jezyk-c-szk...ata,cppri6.htm
albo jak jestes hardcorem
http://www.stroustrup.com/4th.html (ale tego zdecydowanie nie polecam na poczatek, ja na codzien programując w c++ i czytajac tą książkę, mam czasami niezłe WTF).
jak znajdziesz plan studiów cały, a nie tylko sem zimowy i to tak chaotycznie przestawiony to na pewno będzie łatwiej
A S i T to pewnie specjalności?
Na pewno będzie cs, java, cpp i może być c jako narzędzie do urządzeń niskopoziomowych w toku studiów przedstawione, ale czego najwięcej? wygląda raczej na cpp IMO
Kolejne pytanie. Czy do początkującego programowania potrzebny jest dobry sprzęt czy wystarczy taki nootbook z 2rdzeniowy intel atomomem i 4 GB ddr3?
@edit
@Absherr , @zakius
Dobra, dzieki za odp. Mam jeszcze stacjonarke.
AMD Phenom X4 945 3GHz
4GB DDR2
Do jakiego etapu to starczy? Nie mówie tu tylko o C++, tylko o szeroko pojętej nauce programowania :D
Wystarczy ;d
Uzupełniając wypowiedź niżej:
jak będziesz odpalał jakieś serwery javowe, symulatory androida, maszyny wirtualne, duże ide itp. to może być ciężko.
Ale na początek wystarczy. Z biegiem czasu zobaczysz czego potrzebujesz i wymienisz ;d