Ile znasz słów - przekonaj się ;)

0

Cześć,
żeby nie zapomnieć C# napisałem prostą aplikację która sprawdza ile znamy słów w danym języku. Pewnie większość powie że bezmyślne wpisywanie do programu to zły sposób na samo sprawdzenie siebie; ja uważam że trzeba tak zrobić aby dowiedzieć się ile dokładnie znamy słów. Oczywiście zajmuje to dużo czasu lecz jest miarodajne. Od technicznej strony; aplikacja została napisana w C# WPF.

Jak używać:
Do pierwszego TextBox'a wpisujemy słowo w formie [słowo_po_angielsku][myślnik][przetłumaczone_słowo] np. car-samochód. Możemy wpisywać w drugą stronę tzn. polskie tłumaczenie-słowo po angielsku.

Znane błędy:

  • podczas pierwszego uruchomienia zawsze się sypie - powodem jest brak pliku,
  • gdy wpiszemy słowo bez myślnika dostaniemy dwa komunikaty, drugi jest niepotrzebny,

Co w następnej wersji:

  • naprawić powyższe błędy,
  • zmienić wygląd UI,
  • wyczyścić kod,
  • dodanie list które umożliwią sprawdzanie siebie w kilku językach.

Licencja Open Source.

1

Zamiast pisać dodatkowy program tylko i wyłącznie do tworzenia pliku, mogłeś dać przy otwieraniu pliku parametr Mode.OpenOrCreate.
Zamiast na dysku C powinien tworzyć ten plik w folderze z programem.
Nazwy klas i metod piszemy z wielkiej litery. CamelCase
To tak na początek.

4

Podzielam opinie @somekind, ze minusem jest to, ze to jest spakowane rarem ;p A po drugie troche nie rozumiem polityki upubliczniania programu, w którym jak sam piszesz są znane błędy i to do tego tak błahe - jakis exception + brakujacy if kiedy nie ma myślnika, przeciez to kwestia 2 linijek ;)

0
FakeAccount napisał(a):

Podzielam opinie @somekind, ze minusem jest to, ze to jest spakowane rarem ;p

Nie umiesz ściągnąć darmowego 7-zipa?

0
Mały Krawiec napisał(a):

Nie umiesz ściągnąć darmowego 7-zipa?

Czemu nie zadasz tego pytania autorowi, który najwyraźniej tego właśnie nie zrobił?

0
somekind napisał(a):
Mały Krawiec napisał(a):

Nie umiesz ściągnąć darmowego 7-zipa?

Czemu nie zadasz tego pytania autorowi, który najwyraźniej tego właśnie nie zrobił?

Być może autor ma kupiony WinRAR.

1
Mały Kot napisał(a):

Być może autor ma kupiony WinRAR.

I to powód, żeby zmuszać innych ludzi do używania lipnego formatu, zamiast po protsu użyć czegoś normalnego, czego można użyć bez instalowania dodatkowych aplikacji?

0
somekind napisał(a):

I to powód, żeby zmuszać innych ludzi do używania lipnego formatu

Tak. Zapłacił z program po to by go używać. Nie umiesz wypakować rar to Twój problem.

1
Mały Kot napisał(a):

Tak. Zapłacił z program po to by go używać. Nie umiesz wypakować rar to Twój problem.

Z tym bym polemizował, raczej autorowi tematu powinno zalezec na zwiekszeniu odbioru programu w celu oceny i recenzji, po to chyba zalozyl ten watek, no nie? A zmuszanie odbiorcy programu do instalowania jakiegos dodatkowego softu po to tylko, zeby sciagnac i wypakowac jego program to po prostu strzelanie sobie w dupsko ;)

0
Mały Kot napisał(a):

Tak. Zapłacił z program po to by go używać. Nie umiesz wypakować rar to Twój problem.

[ROTFL]

To mi ma zależeć na używaniu czyjegoś programu, czy jego autorowi, żebym ja go używał?

0

Zrobił się spory off-topic więc dla tych którzy mają coś do otworzenia *.rar pierwszy post wystarczy.
Lista odnośników do pobrania:

Pliki *.exe nie są tutaj akceptowane tak samo jak *.cs oraz nie można przesyłać całych katalogów. Moim zdaniem coś do otwierania plików *.rar i *.zip powinien mieć każdy na komputerze ;)

2
  1. opublikuj soft na dwa sposoby: zip i SFX (samo-rozpakowujące się archiwum). To pierwsze przydatne przy wszelkiego rodzaju filtrach bezpieczeństwa.

  2. dla danych użyj katalogu %appdata% + nazwa aplikacji:

string AppData = Environment.ExpandEnvironmentVariables("%AppData%");

Inne katalogi są nieprofesjonalne.

Tu masz opis:
https://social.msdn.microsoft.com/forums/vstudio/en-US/67159d80-eacb-41d9-911b-7f520715a074/how-to-use-the-appdata-folder
http://www.codeproject.com/Tips/370232/Where-should-I-store-my-data

  1. program nie może się sypać w miejscu o którym wiesz że zawsze będzie się sypał. Poczytaj o obsłudze wyjątków.
0
somekind napisał(a):
Mały Kot napisał(a):

Tak. Zapłacił z program po to by go używać. Nie umiesz wypakować rar to Twój problem.

[ROTFL]

To mi ma zależeć na używaniu czyjegoś programu, czy jego autorowi, żebym ja go używał?

Teoretycznie autorowi, ale śledząc instalację np. najnowszych gier Ubisoftu, jak Anno 2070, wręcz przeciwnie.
Ot tak, w skrócie:

  • Kupujesz grę na Steamie
  • Pobiera się przez 2 godziny
  • Okazało się, że tak naprawdę nie pobrała się gra, tylko Uplay - musisz się zarejestrować
  • Przez 15 minut borykasz się z błędami przy rejestracji
  • Po zalogowaniu się pobierasz przez 15 minut aktualizację do Uplay
  • Przez kolejne dwie godziny pobierasz grę
  • Przez kolejne 15 minut aktualizujesz grę
  • Wywala ci błąd niezgodności z DirectX
0

Według mnie nie ma sensu wrzucać do oceny niedokończonego programu. Jak wiesz, w którym miejscu jest błąd, to szukasz jak go naprawić i jak już je wyeliminujesz i będzie działać tak jak zaplanowałeś, to uznasz to za gotową wersję do pokazania komuś.

Ale na dobre Ci to wyszło, bo od razu koledzy pokazali Ci jak naprawić te błędy.

2
Somekind napisał(a)

Zrozum, że do otwierania zipów każdy ma Windowsa, a do rarów trzeba coś instalować. To ogromna różnica.

.rar to na tyle popularny format i tak często używany że nie wyobrażam sobie że ktoś nie ma choćby darmowego 7-zipa żeby go rozpakować. Zwyczajnie czasem czas goni a jedyna wersja dokumentu do odnalezienia jest w formacie .rar. Raz osobiście musiałem korzystać z dekompresora online i ściągnąć jako .zip bo nie miałem czasu na ściąganie i instalowanie aplikacji, ale to już był akt desperacji - tak czy inaczej: da się korzystać z .rar nawet nie posiadając żadnej aplikacji oprócz przeglądarki internetowej

.rar ma lepszą kompresję niż .zip i rożnica po spakowaniu może wynosić nawet kilkadziesiąt megabajtów co ma duże znaczenie przy przesyłaniu plików przez Internet; zwłaszcza gdy ktoś korzysta z Internetu mobilnego z limitem lub płaci za transfer (przykładowo na chomikuj), lub gdy jego transfer jest ograniczony darmowym kontem na hostingu i wynosi 20 kB/s

Rozumiem że .pdf też bojkotujesz bo w windowsie nie ma wbudowanej obsługi i .rtf jest dużo lepsze
Albo że filmy wszystkie masz w .wmv bo ściąganie kodeków to zło?

Nie da się mieć czystego systemu bez dodatkowych aplikacji, chyba że jest się masochistą

2
vbccv napisał(a):

.rar ma lepszą kompresję niż .zip i rożnica po spakowaniu może wynosić nawet kilkadziesiąt megabajtów

7z ma jeszcze lepszą i jest w pełni darmowy. Po co używać jakiegoś rara?

Rozumiem że .pdf też bojkotujesz bo w windowsie nie ma wbudowanej obsługi i .rtf jest dużo lepsze
Albo że filmy wszystkie masz w .wmv bo ściąganie kodeków to zło?

Mało rozumiesz.

1
vbccv napisał(a):

Rozumiem że .pdf też bojkotujesz bo w windowsie nie ma wbudowanej obsługi i .rtf jest dużo lepsze

Od windows 8 jest wbudowana obsługa.

Co do projektu to nie za bardzo wiem, po co wrzucać coś co ma 2 klasy i na oko 100 linii kodu(co pewnie można skrócić do 50), ale od razu rzuciło mi się w oczy, że nie trzymasz się żadnej konwencji nazewnictwa. Raz dwuczłonowe nazwy piszesz w camelCase, a raz z podkreśleniem, tak samo z metodami, raz camelCase a raz PascalCase. Klasy w C# piszemy z dużych liter.

private List<word> words = new List<word>();
public List<word> getList()
{
      return words;
}
public int getCount()
{
      return words.Count();
}

Nie wiem czy zamiast tego nie lepiej byłoby zrobić List<word> words jako właściwość.

Brak też spójności pomiędzy nazwami metod, a tym co w rzeczywistości robią.

public bool IsWordInList(string word) 

Zgodnie z nazwą sprawdza, czy jedno słowo podane jako parametr znajduje się w liście, natomiast w rzeczywistości metoda nie przyjmuje słowa, a wyrażenie zawierające dwa słowa i sprawdza czy jakieś z tych dwóch słów znajduje się w liście.

No i jeśli w całym kodzie używasz angielskich nazw to nie widzę powodu aby dokumentacja(?) była po polsku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1