dotnetomaniak.pl - Artykuły z tagiem SharpOffice

Maj dobiega końca, a wraz z nim kończy się Daj Się Poznać. Ten konkurs wniósł bardzo dużo do mojego życia, przede wszystkim zacząłem regularnie prowadzić bloga. Była to też okazja do poznania wielu osób z polskiej informatycznej blogosfery oraz innych uczestników konkursu. No i ja sam dałem się poznać.

Tagi: .Net, SharpOffice
Dziel się z innymi:
Podsumowanie Daj Się Poznać | MD Tech Blog

Czasem warto przeglądać kod innych, podobnych projektów. W moim przypadku przyglądam się LibreOffice, MonoDevelop i RoslynPad.

Tagi: SharpOffice
Dziel się z innymi:
Korzystanie z innych projektów | MD Tech Blog

Daj się poznać 2016 3079 dni, 5 godzin, 10 minut temu manio143 136 źrodło rozwiń

Już od jakiegoś czasu miałem oko na spróbowanie F#. Połączenie szybkiego programowania funkcyjnego wraz z potężną biblioteką .NET brzmi bardzo fajnie i takie jest w rzeczywistości. Zobaczyłem, że NUnit ma w swoich przykładach projekt w F#, więc postanowiłem przepisać moje obecne testy na F#. Nie przewidziałem jednak trudności wynikających z nieznajomości tego języka…

Dziel się z innymi:
Testy z F# | MD Tech Blog

Daj się poznać 2016 3087 dni, 13 godzin, 28 minut temu manio143 57 źrodło rozwiń

Dotychczas nie pisałem testów (jakoś kod testowałem ręcznie) i odkrywam jak bardzo są pożyteczne. Po pierwsze i najważniejsze, umożliwiają wykrycie błędów w implementacji klas zanim zaczniemy ich używać. Tworząc nowy projekt testów w Visual Studio dostajemy MSTest, który nie działa pod Linuxem. W związku z tym sięgnąłem po NUnit.

Dziel się z innymi:
Testy jednostkowe z NUnit i Moq | MD Tech Blog

Daj się poznać 2016 3090 dni, 13 godzin, 1 minutę temu manio143 164 źrodło rozwiń

Jest wiele sposobów na znajdowanie błędów w aplikacji: dowody matematyczne, testy jednostkowe, ręczne testowanie i debugowanie. Niestety debugowanie może być bardzo czasochłonne jeśli nie wiemy, w którym miejscu znajduje się problem. Tworzenie logów może nam pomóc zlokalizować ten problem.

Tagi: .Net, C#, nlog, SharpOffice
Dziel się z innymi:
Logi z NLog | MD Tech Blog

Daj się poznać 2016 3094 dni, 10 godzin, 43 minuty temu manio143 171 źrodło rozwiń

Piszemy kod, commitujemy, pushujemy. I jesteśmy potem zajęci, zapominamy o kodzie. W tym czasie ktoś stwierdza, że ściągnie sobie nasze repo. Więc klonuje, pobiera paczki, odpala build i … nie działa. Powyższe spowodowane jest tym, że programista nie zawsze pamięta by skompilować, uruchomić, przetestować kod po wprowadzeniu zmian. Powinien pamiętać, ale zdarza się, trudno. To jest jeden ze scenariuszy gdzie CI, czyli Continuous Integration, może pomóc...

Tagi: C#, CI, SharpOffice
Dziel się z innymi:
Continuous Integration | MD Tech Blog

Daj się poznać 2016 3094 dni, 10 godzin, 43 minuty temu manio143 234 źrodło rozwiń

Jakiś czas temu pisałem o DI i IoC oraz o tym, że będę używał kontenera do automatycznego ładowania wielu modułów podczas startu aplikacji. Początkowo zrobiłem metodę ContainerWrapper.AutoRegister(), która iterowała po wszystkich bibliotekach związanych z SharpOfficem i rejestrowała odpowiednie klasy. Ale było to dość zagmatwane, więc postanowiłem trochę to uprzątnąć...

Tagi: .Net, C#, IoC, SharpOffice
Dziel się z innymi:
IRegistrationModule - porządki w kontenerze | MD Tech Blog

Daj się poznać 2016 3105 dni, 9 godzin, 56 minut temu manio143 85 źrodło rozwiń

Dlaczego podejście drugie? Ponieważ już raz pisałem o generowaniu Menu, ale trochę w inny sposób i w innym środowisku. Wtedy po prostu tworzyłem obiekty Xwt.MenuItem. Teraz zmieniłem podejście. Interfejs IMenuElement określa minimalny wspólny interfejs obiektów menu w dowolnym frameworku jakiego będę używał. I na podstawie definicji menu złożenej z obiektów IMenuElement będę generował odpowiednią strukturę obiektów.

Tagi: .Net, C#, SharpOffice, WPF
Dziel się z innymi:
(WPF) Menu - podejście nr2 - MD Tech Blog

Daj się poznać 2016 3106 dni, 7 godzin, 10 minut temu manio143 81 źrodło rozwiń

O tym jak wygląda metoda Main() w aplikacji WPF oraz jak można dodać swoją własną, aby program się uruchamiał.

Tagi: .Net, C#, SharpOffice, WPF
Dziel się z innymi:
WPF - metoda Main() - MD Tech Blog

Daj się poznać 2016 3108 dni, 13 godzin, 38 minut temu manio143 115 źrodło rozwiń

Czasami pisząc kod stwierdzamy, że chcemy w jakiś sposób opisać nasze typy w taki sposób, aby można było się do tego odnieść w kodzie. Z pomocą przychodzą nam dwie funkcjonalności .NETu: Reflection i atrybuty. Czym są atrybuty? ...

Dziel się z innymi:
Atrybuty - jak i po co? - MD Tech Blog

Daj się poznać 2016 3145 dni, 22 godziny temu manio143 192 źrodło rozwiń

Ponieważ bardzo ciężko pisać kod „na sucho”, postanowiłem rozpocząć tworzenie pierwszej aplikacji. W trakcie jej pisania wyjdą na jaw prawie wszystkie elementy mojego projektu, które muszą być zdefiniowane i po części zaimplementowane. Dodatkowo będę mógł odpalić mój Runtime bez wyjątków mówiących, że czegoś mi brakuje.

Tagi: .Net, SharpOffice
Dziel się z innymi:
SharpNote - pierwszy krok - MD Tech Blog

Daj się poznać 2016 3154 dni, 2 godziny, 28 minut temu manio143 82 źrodło rozwiń

Zacząłem się wczytywać czym jest IoC. Okazuje się, że jest to bardzo szerokie pojęcie, a DI to tylko jedna jego interpretacja. W zeszłym tygodniu pisałem o tym czym jest Dependency Injection. Teraz natomiast opowiem pokrótce czym jest IoC i jak będę go używał w moim projekcie.

Tagi: .Net, DI, SharpOffice
Dziel się z innymi:
IoC[2] - Inversion of Control - MD Tech Blog

Daj się poznać 2016 3155 dni, 5 godzin, 21 minut temu manio143 111 źrodło rozwiń

Zanim omówimy czym jest IoC i jak będę go używał, zacznijmy od tego czym jest Dependency Injection. Głównie chodzi o to, żeby rozdzielić implementacje poszczególnych klas. (...)

Dziel się z innymi:
IoC[1] - Dependency Injection - MD Tech Blog

Daj się poznać 2016 3161 dni, 4 godziny, 39 minut temu manio143 165 źrodło rozwiń

Nie zdawałem sobie sprawy jak bardzo łatwiej pisać kod w oparciu o interfejsy. Zamiast tworzyć od razu klasy i martwić się ich implementacją, możemy odłożyć to zadanie na przyszłość. Dzięki temu można stworzyć hierarchię zależności między typami, nie martwiąc się zbytnio wnętrzem interfejsu.

Dziel się z innymi:
[SharpOffice] IBlessed - błogosławione interfesjy - MD Tech Blog

Daj się poznać 2016 3164 dni, 23 godziny, 30 minut temu manio143 91 źrodło rozwiń

Każda większa aplikacja potrzebuje zapisywać sobie jakieś ustawienia. Aby to ułatwić wymyśliłem interfejs IConfiguration. Stwierdziłem, że niezależnie od implementacji tego interfejsu, będzie potrzebowali dwóch metod...

Dziel się z innymi:
[SharpOffice] Konfiguracja - MD Tech Blog

Daj się poznać 2016 3168 dni, 1 godzinę, 33 minuty temu manio143 76 źrodło rozwiń