Witam, Wszystkich na nowym blogu dedykowanym programistom prowadzącym własne firmy developerskie i innym miłośnikom komputerów. Będę starał się łączyć informatyków korzystających z produktów: Microsoft i Embarcadero (dawniej Borland) oraz OpenSource. Znajdziesz tutaj m.in. zagadnienia z: PHP, ASP, Delphi, C++, C#, SQLServer, MySQL, Oracle, SQL, Linux, Unix, Windows, środowisko programistyczne Visual, - Gier, Audio/Video, Matematyki, Grafiki 3D.
Pokazywanie postów oznaczonych etykietą Microsoft. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą Microsoft. Pokaż wszystkie posty
Co to jest język C++ i C#.net CSharp definicja języka programowania
Definicja język programowania
Co to jest:
C++ i C# CSharp
Definicja C++
Definicja C# CSharp
Skondensowaną odpowiedź można znaleźć poniżej:
Co to jest:
język C++ - definicja?
C++ - Obiektowa wersja języka programowania C, utworzona przez Bjarne Stroustrup.
C++ stał się popularny, ponieważ łączył tradycyjne programowanie w C z możliwościami technologii obiektowej. Smalltalk i inne języki obiektowe nie posiadają struktur znanych ze zwykłych języków, takich jak C i Pascal. Najbardziej rozpowszechnionym komercyjnym kompilatorem języka programowania C++ dla Windows jest Visual C++ i C++ Builder.
język C++ - definicja?
C++ - Obiektowa wersja języka programowania C, utworzona przez Bjarne Stroustrup.
C++ stał się popularny, ponieważ łączył tradycyjne programowanie w C z możliwościami technologii obiektowej. Smalltalk i inne języki obiektowe nie posiadają struktur znanych ze zwykłych języków, takich jak C i Pascal. Najbardziej rozpowszechnionym komercyjnym kompilatorem języka programowania C++ dla Windows jest Visual C++ i C++ Builder.
Co to jest:
język C# CSharp - definicja?
C# (CSharp) - Obiektowy język programowania oparty o C++ z elementami języków Basic i Java. Na przykład podobnie do języka programowania Java, C# zapewnia automatyczne usuwanie zbędnych danych z pamięci (nieużytków) - jest to funkcja nie obecna w języku C++. C#, przeznaczony dla platformy .NET_Framework , obsługuje XML i SOAP oraz ma dostęp do biblioteki klas .NET.
język C# CSharp - definicja?
C# (CSharp) - Obiektowy język programowania oparty o C++ z elementami języków Basic i Java. Na przykład podobnie do języka programowania Java, C# zapewnia automatyczne usuwanie zbędnych danych z pamięci (nieużytków) - jest to funkcja nie obecna w języku C++. C#, przeznaczony dla platformy .NET_Framework , obsługuje XML i SOAP oraz ma dostęp do biblioteki klas .NET.
Język programowania C++ jest uznawany za jeden z "najlepszych" w szerokim tego słowa znaczeniu na świecie.
Zapis odczyt obiektów w plikach binarnych C# .NET Compact
W tym post-cie przedstawię zapis i odczyt klas-obiektów (rekordów naszej własnej plikowej bazy danych) do plików binarnych.
Zapisywane i odczytywane będą klasy-obiekty (rekordy plikowej bazy danych) - instancje obiektów klas, w zasadzie instancja jednego obiektu klasy reprezentującego naszą całą tabele do jednego pliku binarnego.
Użyjemy do tego SPECJALNĄ serializację dla .NET Compact Framework (Serializacja klas na urządzenia mobilne) dla urządzeń mobilnych.
Zaczynamy jeszcze raz od wyjaśnienia co to w ogóle jest serializacja.
Serializacja – w programowaniu komputerów proces przekształcania obiektów, tj. instancji określonych klas, do postaci szeregowej, czyli w strumień bajtów, z zachowaniem aktualnego stanu obiektu. Serializowany obiekt może zostać utrwalony w pliku dyskowym, przesłany do innego procesu lub innego komputera poprzez sieć. Procesem odwrotnym do serializacji jest deserializacja. Proces ten polega na odczytaniu wcześniej zapisanego strumienia danych i odtworzeniu na tej podstawie obiektu klasy wraz z jego stanem bezpośrednio sprzed serializacji.
Serializacja służy do zapisu stanu obiektu, a później do odtworzenia jego stanu. Mechanizm ten jest używany między innymi na platformach: .NET, Java, PHP, Python, Ruby.
Źródło
Idę tego post-a jest pokazanie jak na urządzeniach mobilnych, np. z systemem operacyjnym Windows CE (Embedded), radzić sobie z zapisem i odczytem rekordów (reprezentowanych przez klasy) do plików binarnych.
Zaczynamy..
Znów skorzystamy z darmowej do zastosowań komercyjnych biblioteki:
(ALE TYM RAZEM JEJ NIE OPISUJE TYLKO WYKORZYSTUJE - opis jest w pierwszym linku w post-cie)
compactformatterplus.
Poniżej link do niej i do jej twórców. [Swoją drogą jest tam dużo użytecznych darmowych do zastosowań komercyjnych bibliotek dla .NET i .NETCF]
Uwaga - aby ja pobrać wystarczy darmowa rejestracja.
https://www.codeproject.com/Articles/21518/CompactFormatterPlus-Generic-Serializer-for-Full-a
Trzeba wiedzieć, że poprzez serializajcję niezależnie czy dla aplikacji desktopowych, czy dla aplikacji mobilnych możliwy jest zapisywać/odczyt tylko pojedynczej klasy/obiektu w jednym pliku binarnym. Nie można zapisać np. 10 instancji tych samych klas (a więc 10 rekordów) w jednym pliku binarnym - w zasadzie to pewnie się da, ale jest to zadanie skomplikowane i co więcej pracochłonne. CZAS TO PIENIĄDZ i ja pokażę jak zapisać to w sposób błyskawiczny. Cała sztuczka polega na tym, że zapisujemy jedną klasę/obiekt, w której mamy kolekcje klas/obiektów - czyli mamy kolekcję rekordów naszej tabeli.
MOJA KLASA DO:
ZAPISU INSTANCJI OBIEKTU DO PLIKU BINARNEGO (zapisu tabeli)
i
ODCZYTU INSTANCJI OBIEKTU Z PLIKU BINARNEGO (odczytu tabeli)
Dodatkowy potrzebny kod:
Użycie:
NO I MAMY OBSŁUGĘ PLIKOWEJ BAZY DANYCH, UFF, POWODZENIA.
Zaczynamy jeszcze raz od wyjaśnienia co to w ogóle jest serializacja.
Serializacja – w programowaniu komputerów proces przekształcania obiektów, tj. instancji określonych klas, do postaci szeregowej, czyli w strumień bajtów, z zachowaniem aktualnego stanu obiektu. Serializowany obiekt może zostać utrwalony w pliku dyskowym, przesłany do innego procesu lub innego komputera poprzez sieć. Procesem odwrotnym do serializacji jest deserializacja. Proces ten polega na odczytaniu wcześniej zapisanego strumienia danych i odtworzeniu na tej podstawie obiektu klasy wraz z jego stanem bezpośrednio sprzed serializacji.
Serializacja służy do zapisu stanu obiektu, a później do odtworzenia jego stanu. Mechanizm ten jest używany między innymi na platformach: .NET, Java, PHP, Python, Ruby.
Źródło
Idę tego post-a jest pokazanie jak na urządzeniach mobilnych, np. z systemem operacyjnym Windows CE (Embedded), radzić sobie z zapisem i odczytem rekordów (reprezentowanych przez klasy) do plików binarnych.
Zaczynamy..
Znów skorzystamy z darmowej do zastosowań komercyjnych biblioteki:
(ALE TYM RAZEM JEJ NIE OPISUJE TYLKO WYKORZYSTUJE - opis jest w pierwszym linku w post-cie)
compactformatterplus.
Poniżej link do niej i do jej twórców. [Swoją drogą jest tam dużo użytecznych darmowych do zastosowań komercyjnych bibliotek dla .NET i .NETCF]
Uwaga - aby ja pobrać wystarczy darmowa rejestracja.
https://www.codeproject.com/Articles/21518/CompactFormatterPlus-Generic-Serializer-for-Full-a
Trzeba wiedzieć, że poprzez serializajcję niezależnie czy dla aplikacji desktopowych, czy dla aplikacji mobilnych możliwy jest zapisywać/odczyt tylko pojedynczej klasy/obiektu w jednym pliku binarnym. Nie można zapisać np. 10 instancji tych samych klas (a więc 10 rekordów) w jednym pliku binarnym - w zasadzie to pewnie się da, ale jest to zadanie skomplikowane i co więcej pracochłonne. CZAS TO PIENIĄDZ i ja pokażę jak zapisać to w sposób błyskawiczny. Cała sztuczka polega na tym, że zapisujemy jedną klasę/obiekt, w której mamy kolekcje klas/obiektów - czyli mamy kolekcję rekordów naszej tabeli.
MOJA KLASA DO:
ZAPISU INSTANCJI OBIEKTU DO PLIKU BINARNEGO (zapisu tabeli)
i
ODCZYTU INSTANCJI OBIEKTU Z PLIKU BINARNEGO (odczytu tabeli)
Dodatkowy potrzebny kod:
Użycie:
NO I MAMY OBSŁUGĘ PLIKOWEJ BAZY DANYCH, UFF, POWODZENIA.
Serializacja klas C# .NET Compact urządzenia mobilne
Zaczynamy od wyjaśnienia co to w ogóle jest serializacja.
Serializacja – w programowaniu komputerów proces przekształcania obiektów, tj. instancji określonych klas, do postaci szeregowej, czyli w strumień bajtów, z zachowaniem aktualnego stanu obiektu. Serializowany obiekt może zostać utrwalony w pliku dyskowym, przesłany do innego procesu lub innego komputera poprzez sieć. Procesem odwrotnym do serializacji jest deserializacja. Proces ten polega na odczytaniu wcześniej zapisanego strumienia danych i odtworzeniu na tej podstawie obiektu klasy wraz z jego stanem bezpośrednio sprzed serializacji.
Serializacja służy do zapisu stanu obiektu, a później do odtworzenia jego stanu. Mechanizm ten jest używany między innymi na platformach: .NET, Java, PHP, Python, Ruby.
Źródło
Idę tego post-a jest pokazanie jak na urządzeniach mobilnych, np. z systemem operacyjnym Windows CE (Embedded), radzić sobie z serializacją. Wiadomo, że na urządzeniach mobilnych mamy do czynienia z .NET Compact Framework, a nie z pełnym .NET Framework. A właśnie na: .NET Compact Framework, nie mamy dostępu do namespace:
using System.Runtime.Serialization.Formatters.Binary,
które jest niezbędne do korzystania z serializacji. Dokładnie to, aby serializować obiekty (klasy) potrzeba nam między innymi klasy: BinaryFormatter, który właśnie jest w tej przestrzeni.
Więcej czytaj: tutaj.
Można temu zaradzić!, Ufff..
Skorzystamy z darmowej do zastosowań komercyjnych biblioteki: compactformatterplus.
Poniżej link do niej i do jej twórców. [Swoją drogą jest tam dużo użytecznych darmowych do zastosowań komercyjnych bibliotek dla .NET i .NETCF]
Uwaga - aby ja pobrać wystarczy darmowa rejestracja.
https://www.codeproject.com/Articles/21518/CompactFormatterPlus-Generic-Serializer-for-Full-a
Ja teraz dokładnie opiszę i podam przykłady jak jej używać, gdyż Twórcy tej biblioteki dają tylko same źródła bez przykładów, a na stronie WWW też nie ma przykładów.
Biblioteka składa sie z trzech projektów stanowiących integralną całość.
Są to: ADOHelper, ISerial, CompactFormatterPlus.
Każdy z tych projektów należy dołączyć do Swojego głównego projektu dla którego piszemy software na urządzenie mobilne.
Dlaczego - bo oczywiście można by skompilować cały projekt, składający się z: ADOHelper, ISerial, CompactFormatterPlus i po kompilacji otrzymać trzy biblioteki dll - które można by potem dołączyć do Naszego projektu, ale zarówno Twórcy biblioteki [jest o tym wzmianka w linku, który udostępniłem], jak i Microsoft nie zaleca umieszczać bibliotek dll na urządzeniach mobilnych dlatego, że: w większości urządzeń mobilnych one po prostu nie działają, albo mogą powodować niewłaściwe działanie Naszego software.
Czyli dołączyliśmy te trzy projekty do Naszego projektu - warto zrobić sobie osobny folder w Naszym projekcie, np. Extenstions. Teraz wykonujemy Rebuild z wybranym: Set As StartUp Project ustawionym na Nasz główny projekt.
Po tej czynności dodajemy do Naszego głównego projektu w References trzy referencje z zakładki Naszego Projektu: ADOHelper, ISerial, CompactFormatterPlus.
I już mamy prawie koniec.
Teraz pozostał Nam sam kod.
ZAPIS INSTANCJI OBIEKTU DO PLIKU BINARNEGO:
ODCZYT INSTANCJI OBIEKTU Z PLIKU BINARNEGO:
Dodatkowy potrzebny kod:
Myślę, że problem serializacji na urządzenia mobilne został rozwiązany. Rozwiązując ten problem zyskaliśmy możliwość zapisywania do plików binarnych struktur i klas, czyli możemy tworzyć plikowe binarne baz danych.
Serializacja – w programowaniu komputerów proces przekształcania obiektów, tj. instancji określonych klas, do postaci szeregowej, czyli w strumień bajtów, z zachowaniem aktualnego stanu obiektu. Serializowany obiekt może zostać utrwalony w pliku dyskowym, przesłany do innego procesu lub innego komputera poprzez sieć. Procesem odwrotnym do serializacji jest deserializacja. Proces ten polega na odczytaniu wcześniej zapisanego strumienia danych i odtworzeniu na tej podstawie obiektu klasy wraz z jego stanem bezpośrednio sprzed serializacji.
Serializacja służy do zapisu stanu obiektu, a później do odtworzenia jego stanu. Mechanizm ten jest używany między innymi na platformach: .NET, Java, PHP, Python, Ruby.
Źródło
Idę tego post-a jest pokazanie jak na urządzeniach mobilnych, np. z systemem operacyjnym Windows CE (Embedded), radzić sobie z serializacją. Wiadomo, że na urządzeniach mobilnych mamy do czynienia z .NET Compact Framework, a nie z pełnym .NET Framework. A właśnie na: .NET Compact Framework, nie mamy dostępu do namespace:
using System.Runtime.Serialization.Formatters.Binary,
które jest niezbędne do korzystania z serializacji. Dokładnie to, aby serializować obiekty (klasy) potrzeba nam między innymi klasy: BinaryFormatter, który właśnie jest w tej przestrzeni.
Więcej czytaj: tutaj.
Można temu zaradzić!, Ufff..
Skorzystamy z darmowej do zastosowań komercyjnych biblioteki: compactformatterplus.
Poniżej link do niej i do jej twórców. [Swoją drogą jest tam dużo użytecznych darmowych do zastosowań komercyjnych bibliotek dla .NET i .NETCF]
Uwaga - aby ja pobrać wystarczy darmowa rejestracja.
https://www.codeproject.com/Articles/21518/CompactFormatterPlus-Generic-Serializer-for-Full-a
Ja teraz dokładnie opiszę i podam przykłady jak jej używać, gdyż Twórcy tej biblioteki dają tylko same źródła bez przykładów, a na stronie WWW też nie ma przykładów.
Biblioteka składa sie z trzech projektów stanowiących integralną całość.
Są to: ADOHelper, ISerial, CompactFormatterPlus.
Każdy z tych projektów należy dołączyć do Swojego głównego projektu dla którego piszemy software na urządzenie mobilne.
Dlaczego - bo oczywiście można by skompilować cały projekt, składający się z: ADOHelper, ISerial, CompactFormatterPlus i po kompilacji otrzymać trzy biblioteki dll - które można by potem dołączyć do Naszego projektu, ale zarówno Twórcy biblioteki [jest o tym wzmianka w linku, który udostępniłem], jak i Microsoft nie zaleca umieszczać bibliotek dll na urządzeniach mobilnych dlatego, że: w większości urządzeń mobilnych one po prostu nie działają, albo mogą powodować niewłaściwe działanie Naszego software.
Czyli dołączyliśmy te trzy projekty do Naszego projektu - warto zrobić sobie osobny folder w Naszym projekcie, np. Extenstions. Teraz wykonujemy Rebuild z wybranym: Set As StartUp Project ustawionym na Nasz główny projekt.
Po tej czynności dodajemy do Naszego głównego projektu w References trzy referencje z zakładki Naszego Projektu: ADOHelper, ISerial, CompactFormatterPlus.
I już mamy prawie koniec.
Teraz pozostał Nam sam kod.
ZAPIS INSTANCJI OBIEKTU DO PLIKU BINARNEGO:
ODCZYT INSTANCJI OBIEKTU Z PLIKU BINARNEGO:
Dodatkowy potrzebny kod:
Myślę, że problem serializacji na urządzenia mobilne został rozwiązany. Rozwiązując ten problem zyskaliśmy możliwość zapisywania do plików binarnych struktur i klas, czyli możemy tworzyć plikowe binarne baz danych.















