Licence Manager – pierwszy program w C# [Wstęp]

Jakiś czas temu znalazłem na swoim już dawno nieużywanym pendrive kod programu, który zaczynałem tworzyć jakiś rok temu. Była to część większego programu, którego nie ma sensu dokładniej opisywać. Skupimy się na jego drobnym fragmencie, który dosyć dużo mnie nauczył. Pewnie kojarzysz programy, które wymagają podania klucza aktywacyjnego, aby mogły działać na naszym komputerze? W większości przypadków te klucze są przypisane do konkretnej wersji systemu, użytkownika więc należy stworzyć odpowiedni program, który by te klucze generował i weryfikował. Oczywiście moje rozwiązania nie dorównują rozwiązaniom programów typu Adobe Photoshop, gdzie nad kodem siedzi sztab ludzi. Mimo to do prostych zastosowań oraz do nauki nadaje się w sam raz.
Ta seria ma być takim mini kursem języka C#. Poruszymy kilka ciekawych rzeczy, które przydadzą się do projektowania tego typu aplikacji. Nie będę poruszać typowych podstaw języka programowania. Jakieś podstawy powinieneś już znać. Jest pełno kursów programowania, że bez problemu znajdziesz odpowiedni, który Ci to dokładnie wytłumaczy. Znajomość składni XML też byłaby bardzo dobrym początkiem, dzięki temu łatwiej będzie przejść przez etap projektowania wyglądu naszej aplikacji. Zamieszczam też link do kursu C#, który pomoże Ci zrozumieć podstawy tego języka.
Potrzebne narzędzia
Przede wszystkim będziemy pracować na Visual Studio 2013 Community, który możesz ściągnąć z tej strony:
http://www.visualstudio.com/pl-pl/products/free-developer-offers-vs
Jest to darmowa wersja edytora udostępniona przez Microsoft. Posiada pewne ograniczenia, ale nie będą one nas zupełnie interesować. I tak jest o niebo lepiej niż w wersji Express przed udostępnieniem Community. Instalator Visual Studio powinien wszystko nam ładnie zainstalować czego tylko potrzebujemy. Oprócz tego cały kod źródłowy będzie na bieżąco aktualizowany na Githubie, skąd będziecie mogli pobrać aktualną wersję projektu, która po każdej lekcji będzie udostępniana przeze mnie.
Założenia programu
Program ma generować klucz aktywacyjny na podstawie:
- imienia i nazwiska
- adresu e-mail
- wersji (BETA, PRO, PERSONAL)
Klucz będzie w formacie: PERSONAL-XXXX-XXXX-XXXX-XXXX-XXXX, gdzie pierwszy segment oznacza wersję. Dalsze segmenty to zahashowana wartość wygenerowana za pomocą wcześniej wymienionych danych. Program będzie generował i sprawdzał poprawność funkcji.
Przykładowy kod, który będziesz widział na stronie będzie w charakterystycznych boksach:
public string getLicenseType() { return licenseType.ToString(); }
Postaram się umieszczać każdą lekcję w odstępach tygodniowych. Program sam w sobie jest prawie gotowy. Wymaga tylko paru zmian estetycznych, które pozwolą Tobie łatwiej się w nim odnaleźć. Najdłużej będzie trwało omawianie poszczególnych fragmentów. Nie mam jeszcze konkretnie ułożonego planu lekcji, ale zapewniam Ciebie, że będzie omówiona każda ważna rzecz.
Oczywiście liczę na aktywność Twoją w komentarzach. Każdy komentarz jest na wagę złota. Motywuje mnie to do dalszego działania.
Do zobaczenia za tydzień!