Archive for the ‘Interoperability’ Category

Na gorąco   Leave a comment

Nowe akronimy, nowe, świeże, nieopierzone jeszcze technologie:

  • MBaaS (mobile back end as a service) produkty serwerowe o luźnej, rozproszonej architekturze  (na poziome REST API) wspierające dla:
  • MEAPs (mobile enterprise application platforms) – ujednolicona warstwa serwerowa na poziomie middleware
  • Zadania MBaaS – cytat z artykułu porównawczego: ‘MBaaS systems typically provide push notifications, file storage and sharing, integration with social networks such as Facebook and Twitter, location services, messaging and chat functions, user management, the ability to run business logic, and usage analysis tools. Enterprise-oriented MBaaS systems also provide integration with existing applications and databases. ’
  • Przedstawiciele – Appcelerator, FeedHenry. Wszystko jednak jest zbyt świeże aby mogło być używane w środowiskach produkcyjnych.

Testowanie aplikacji mobilnych – trend – http://appium.io/slate/en/master/?ruby#appium-design

Błędy – każdemu mogą się przydarzyć – http://www.techrepublic.com/blog/10-things/10-immutable-laws-of-mistakes/?tag=nl.e098&s_cid=e098&ttag=e098&ftag=TRE126e25f. Tak wygląda nasze życie wśród morza pomyłek!

Udało mi się zainstalować VS2015 – Proszę zwrócić uwagę Node.js, Android NDK oraz Java SDK:

Program Manager_2014-11-17_10-43-21

HP (ZDI) corocznie organizuje dla tzw. whitehat hackers konkurs z nagrodami Pwn2Own, tym razem w Tokyo i bez niespodzianek, jak zwykle dziurawe przeglądarki. Wśród urządzeń mobilnych jedynie BlackBerry i Windows Phone uchowały się przed atakami do końca (do ostatecznego włamu). WP został naruszony ale nie do momentu złamanie ochrony. Jedynie BB (Z30) jak zwykle okazał się barierą nie do złamania. Więcej na dzisiejszym ZDNet i TechRepublic.

Ciekawa analogia, jeden z nagrodzony w tym roku Bossie Award – technologia node-webkit (wspierana przez Intela) – czyli uruchamianie aplikacji kompozytowej (node.js w webkit) w środowisku graficznym (desktop) dowolnego systemu operacyjnego (za logikę odpowiada Node.js za prezentację i sterowanie – WebKit) jest namiastką tego co już było dawno (od IE6) dostępne w technologiach MS – aplikacje HTA. Oczywiście po tylu latach idea uruchomienia aplikacji w języku skryptowym w przeglądarce na prawach aplikacji desktopowej uległa znacznej ewolucji i udoskonaleniu. Prezentacja node-webkit jest tu – https://speakerdeck.com/zcbenz/node-webkit-app-runtime-based-on-chromium-and-node-dot-js. Bardziej szczegółowy opis – http://oldgeeksguide.github.io/presentations/html5devconf2013/wtod.html#/32

Jest wiele darmowych kursów informatycznych, wiele jest darmowych tylko z nazwy. Prawdziwie bezpłatne to MIT (w ramach oferty – http://ocw.mit.edu/courses/writing-and-humanistic-studies/21w-789-communicating-with-mobile-technology-spring-2011/ spis najczęściej odwiedzanych kursów jest tu) i Havard (https://cs50.harvard.edu/) oraz te prowadzone przez firmy np.Microsoft (MVA). U nas w kraju to na uwagę zasługuje płatny niestety serwis virtualstudy. Czasami na płatnym udacity trafi się jakiś darmowy okruszek, ale to najczęściej sponsorowane przez Google kursy Androida.

Pożyteczne oprogramowanie – Advanced SystemCare 8 do czyszczenia komputera, podobnie jak CCleaner.

Rozmowa z Jonathan Ive na temat innowacyjności Apple oraz naruszenia praw autorskich – http://www.dezeen.com/2014/11/13/design-education-tragic-says-jonathan-ive-apple/

Zasoby na temat tworzenia aplikacji w środowisku PhoneGap – https://github.com/mwbrooks/phonegap-day-workshop-beginner/wiki

Lista zawartości Visual Studio 2015 jest imponująca:

Krótkie omówienie nowinek w VS2K15 – http://blogs.msdn.com/b/csharpfaq/archive/2014/11/12/short-videos-demonstrating-what-s-new-in-visual-studio-2015-preview-for-c-vb-and-f.aspx

Coroczne nagrody redakcji javaworld – Bossie Awards – http://www.javaworld.com/article/2692862/developer-tools-ide/application-development-164642-bossie-awards-2014-the-best-open-source-application-development-tool.html

Materiały z javaworld dla deweloperów:

Reklamy

Posted 17 listopada 2014 by marekwmsdn in .NET, Android, C#, Cloud computing, Interoperability, Java, MS, MS Azure

Sprawa rozwoju Java   Leave a comment

Maszyna wirtualna Java (VM) w swej najnowszej edycji SE 7 pozwala na stosowanie innych języków programowania ogólnie nazwanych dynamicznymi (kiedyś skryptowymi): Rhino, Ruby, Python itd. Sytuacja podobna ma miejsce w .NET (Python). Rozszerzenia JVM o nowe języki znane jest od dawna (np.przeniesienie JavaScript w postaci technologii Rhino) .W przypadku Java oznacza to portowanie języka do JVM (korzysta się wtedy ze wszystkich zalet solidnej, skalowalnej platformy JVM). Liczy się jednak nie tylko sama możliwość uruchamiania jakiegoś języka dynamicznego na tej platformie. Ważną zaletą jest wymienialność – oznacza to, że dany język może korzystać z dobrodziejstwa inwentarza JVM (biblioteki, JAR, JIT, optymalizacja). Standard takiej wymienialności został nazwany JSR 292 pozwolił stworzyć specjalny bytecode (uruchamiany na równi z java byte code w środowisku maszyny wirtualnej JVM) zwany invokedynamic dzięki uniknięto narzutu takiej komunikacji. Wśród tych języków dynamicznych można wyróżnić następujące kategorie:

  1. Rozszerzenia języka Java: Scala, Groovy, Kotlin, Gosu
  2. Języki spoza rodziny Java: JRuby, JPython, Closure, NetRexx (pierwszy język skryptowy dla Java wprowadzony przez IBM)
  3. Pozostałe: Rhino

Źródło Dr.Dobbs: http://www.drdobbs.com/jvm/a-long-look-at-jvm-languages/240007765

Posted 20 Maj 2013 by marekwmsdn in Interoperability, Java, JavaScript

Nowinki różne na temat aplikacji mobilnych   Leave a comment

Tworzenie aplikacji na urządzenia mobilne – Phone Gap – może być tutaj dobrym kandydatem. Jest bezpłatne, wykorzystuje HTML i JS, jest na wiele urządzeń, ma dostęp do sensorów (GPS, kamera). Wadą brak szybkości jakie mają aplikacje natywne – tworzy WebView container który jest uruchamiany pod WebKitem. Dla platformy Android wymaga zainstalowania odpowiedniego środowiska – “ install Eclipse, the Android SDK, and the Android Development Tools (ADT) plug-in”.  Jest jeszcze dodatek – Adobe’s PhoneGap Build cloud  – pozwalający na trzymanie środowiska deweloperskiego w chmurze (za darmo dla open-source, opłata 12$/mc  za aplikacje komercyjne). Ułatwieniem mogą być IDE w postaci AppMobi lub Tiggzi z prekonfigurowanymi ustawieniami środowiska. Można dołączać dodatkowe biblioteki UI jak: JQuery Mobile, Sencha Touch, and XUI. Na podstawie INFOWORLD.

Xamarin (na bazie Mono) też wypuściło nowe wersje swego oprogramowania do natywnego kodu – Xamarin Designer for Android dla środowiska Visual Studio. Ale jest to płatne! Wersja bezpłatna zwana przez nich Trial pozwala na uruchamianie aplikacji jedynie w emulatorze. Lepiej wykorzystaj wiedzę zgromadzoną w projekcie Mono na stronach Mono-project (np. http://www.mono-project.com/UsingClientCertificatesWithXSP). Dodatkowa informacja nie mniej ważna – firma Xamarix udostępniła narzędzie o nazwie XobotOS służące do zamiany kodu Java na C# na poziomie kodu źródłowego. Ciekawe jest to szczególnie w momencie toczącego się właśnie  sporu między Google a Oracle o nielegalne wykorzystanie IP i języka Java w systemie Android (źródło – http://visualstudiomagazine.com/articles/2012/05/11/no-java-required-write-android-apps-in-c-sharp.aspx). Tutaj należy się szacunek MS, że podał specyfikację C# oraz .NET VM do organizacji zajmującej się standardami (m.in. też JavaScript) ECMA i uzyskał standard ISO (MS ogłosił to jako otwartą specyfikację bez zagrożenia patentowego – strong patent commitments) i zobowiązał się do utrzymania statutu standardu otwartego (community promise). Idea jest taka: maszyna wirtualna Dalvik VM na której chodzi system operacyjny Android jest nie do końca zoptymalizowana jak ma to miejsce w przypadku Hostspot-a Javy lub silnika Mono – postanowiono więc przertłumaczyć kod Java na C# i uzyskać nową wersję Dalvik-a. Narzędziem początkowym był pojekt Sharpen autorstwa Frank Krueger (portował on applet na iPad-a). Tutaj zacytuję pean napisany przez ojca projektu Mono – Miguel de Icaza na swym blogu blogu http://blog.xamarin.com/2012/05/01/android-in-c-sharp/ o wyższości technologii .NET na Java “Since then, both the language and the execution environment have continued to evolve and improve. C# went from being a slightly better Java to be light-years ahead. From embracing dynamic programming, bring asynchronicity into the language, introduce iterators, functional programming constructs, embrace parallelism and got a great implementation of generics. Many of the these features came from the research done by Don Syme and his F# team that have kept a steady flow of new ideas getting injected into the language”.  Podobna sytuacja jest w przypadku IKVM – kompilatora przekładającego Java do dll/exe.

Po drodze jest jeszcze jedna informacja – przewodnik po tworzeniu aplikacji na Android (z techrepublic) dla początkujących.  Kontynuacja jest tu.

Posted 16 Maj 2012 by marekwmsdn in Android, ikvm, Interoperability, Java, Mobile Apps, Mono

Ciekawe linki   Leave a comment

Świetny kurs JS – http://jqfundamentals.com/book/index.html, a informacja pochodzi ze strony – http://citizen428.net/blog/2010/08/12/30-free-programming-ebooks/. Praca z PDF-ami. Zapełnienie formularza przygotowanego w PDF-ie poprzez program – http://www.codeproject.com/Articles/23105/Programmatically-Complete-PDF-Form-Fields-using-Vi. Uproszczone wprowadzenie do szyfrowania w .NET – http://www.codeproject.com/Articles/10154/NET-Encryption-Simplified.

Ciekawy artykuł na temat parsowania formatu PDF – http://www.codeproject.com/Articles/12445/Converting-PDF-to-Text-in-C.  Autor przucił bibliotekę itext na rzecz PDFBox. (piękny link z muzyką – http://pdfbox.org/sugar-hill-gang-apache-jump-on-it/). Aktualny link do ściągnięcia – PDFBOX –> http://sourceforge.net/projects/pdfbox/files/latest/download?source=files. To wszystko działa dzięki IKVM.NET. Inny projekt to scalanie plików PDF – http://www.codeproject.com/Articles/28283/Simple-NET-PDF-Merger.

Podpis cyfrowy PDF – opis jak to zrobić – http://www.codeproject.com/Articles/14488/E-signing-PDF-documents-with-iTextSharp wraz z kodami źródłowymi oraz podobna biblioteka – http://www.codeproject.com/Articles/29274/Digital-Signatures.

Super cytat – “He usually works late hours with some heavy music and prefers to test and prove everything to his own satisfaction before committing himself and likes to finish what he starts without interruptions. ” z http://www.codeproject.com/Articles/6623/Porting-Java-Public-Key-Hash-to-C-NET na temat wymiany kluczy między Javą (Unix) a .NET-em.

Wymienialność kryptograficzna między Javą a .NET-em:

Informacja o dodatkowej funkcjonalności w C# przy przejściu z wersji 2.0 do 4.0 – http://www.codeproject.com/Articles/327916/C-Language-Features-From-C-2-0-to-4-0

Posted 20 lutego 2012 by marekwmsdn in C#, Interoperability, iText, Java, JavaScript, Kryptografia, PDF

Różne ciekawostki   Leave a comment

Biblioteka JQ/JS/HTML5 w MS – kursy na różne okazje – http://msdn.microsoft.com/pl-pl/library/hh150136.aspx

Przeglądarka wszystko wytrzyma – testowanie różnych języków programowania w środowisku przeglądarki internetowej – http://www.techrepublic.com/blog/australia/try-these-languages-in-your-browser/429?tag=content;siu-container. Są tam różne języki, warto spróbować Haskell oraz ironPython (szczególnie część 6 i 7 która mówi o integracji z .NET) a pod linkiem http://ironpython.net/documentation/ jest dużo na temat Silverlight oraz dokumentacji (patrz też link www.voidspace.org.uk) wraz z odnośnikiem do książki IronPython in Action. Użyteczne linki na temat Pythona – http://www.ironpython.info/index.php/Useful_Links

Zamiennik Crystal Reports – Clear Reports (https://www.inetsoftware.de/products/clear-reports/editions) też swoje kosztuje, ale podobno czyta szablony z CR. Ma dwie wersje: .NET i Java. Stosuje technikę IKVM.NET.

Udało mi się pobawić z IKVM.NET, działa. Można w środowisku .NET wywoływać klasy z Javy przekształcone w DLL. Daje to niesamowite możliwości np. klasy w Javie komunikują się poprzez  JDBC z bazami (wystarczy jeden plik jar realizujący obsługę dostępu do bazy) a po przekształceniu w DLL można je wywoływać z poziomu C#. Daje to niesamowitą elastyczność i zero konfiguracji, ale jest też niebezpieczne – każdy może sobie napisać programik udostępniający te dane poza kontrolą admin-a. Podobnie zresztą się ma z ODBC (ale tu może w pewnej mierze ingerować a administrator). Dostęp do danych centralnych (serwerowych) musi odbywać się poprzez oprogramowanie na serwerze (warstwę pośrednią) realizujące filtrowanie dostępu do bazy dla zdalnych użytkowników.

Zasoby z portalu AJAXLINE:

Zabawka MS – LightSwitch – jak wystartować – http://blogs.msdn.com/b/bethmassi/archive/2011/12/01/beginning-lightswitch-getting-started.aspx

Ciekawe strony deweloperskie   Leave a comment

Zebrane z Avant w pracy. Oracle promuje nadal tworzenie aplikacji przy pomocy wizardów – Oracle Application Express, narzędzie podobne do MS LightSwitch. Polska firma, która  zbudowała unikalny procesor realizujący kod Java Byte Code – http://www.gryftechnologia.com/#oprogramowanie.

Świetna strona FAQ o Javie na temat rozszerzenia SWT na potrzeby Eclipse – http://www.eclipse.org/swt/faq.php#howusewebkit (a tam jak uruchomić w oknie przeglądarkę dowolnego rodzaju np. WebKit). Strona z widget-ami – http://www.eclipse.org/swt/widgets/, i z kawałkami (snippet – skrawek) przykładowych kodów – http://www.eclipse.org/swt/snippets/ . Dywagacje na temat menadzerów układów – http://www.eclipse.org/articles/article.php?file=Article-Understanding-Layouts/index.html. Ale uwaga odwieczny partner IBM firma Oracle mówi o zaprzestaniu wspierania JSR-  . Zamiast tego proponuje własne rozszerzenie do tworzenia interfejsu GUI – to jest chore, najpierw był AWT, potem SWT, dalej Eclipse wymyślił swoją zabawkę, a na koniec Oracle kupił Sun-a i przebił wszystkich swoim własnym wynalazkiem (do zobaczenia w ich RAD-zie rywalu Eclipse – NETBEANS 7.1). SAP w CR postawił na rozwój w Javie (Eclipse a co za tym idzie w SWT) co teraz ma zrobić skoro ich odwieczny wróg – Oracle rozwija inną bibliotekę GUI?

Jeżeli chodzi o oskryptowanie na poważnie aplikacji Acrobat-a poprzez wykorzystanie JS to tu znajdziesz najwięcej informacji – http://www.planetpdf.com/developer/learningcenter.asp?ContainerID=1519, np. jak i gdzie używać JS.

W portalu http://www.zlotemysli.pl/prod/6380/zwielokrotnianie-umyslu.html lub http://www.zlotemysli.pl/prod/6558/mapologia.html jak widać czasami w Internecie trafiają się perełki do czytania

Ciekawe strony dla deweloperów w C# – dotnetkicks. Bardzo ciekawy traktat o roli i wykorzystaniu INTERFACE w C# – “I, interface”. Doskonała  analiza ORM (kiedy go używać) i lekkie alternatywy jak ActiveRecord oraz Typed Data Sets (TDS) – “Do you really need ORD?”.

Jak stworzyć pierwszą aplikację w Facebook-u? . Na GITHUB jest cała sekcja poświęcona narzędziom dla FB – https://github.com/facebook.  Jest też strona – http://developers.facebook.com/opensource/.

Google’a ukłon w stronę twórców piszących w JS – http://webhosting.pl/Korzystaj.z.googleowych.API.uzywajac.nowej.biblioteki.JavaScriptu (więcej na ten temat jest tu)

Triki dla użytkowników typu “geek” – http://www.technotraits.com/2010/01/god-mode-trick-in-windows-7/ i http://www.technotraits.com/2008/11/10-amazing-windows-command-line-tricks/

Teraz o SAP CR. Grupa dyskusyjna – forum z crystalreportsbook, o dziwo, jest też trening CR na YT –

Pierwsza lekcja instalacji CR dla VS 2010

Jest też, a jakże, strona na FB – http://www.facebook.com/SAPCrystalReports, a tam kącik “Knowledge Center”. Blog techniczny – http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/23061 (Ludek Uher). Jest też SAP na TT – https://twitter.com/#!/SAPCRNetSup. SAP dla dewelopersów – SDN – http://www.sdn.sap.com/irj/scn/index.

SAP wyróżnia grupę technologii tzw. wbudowanych (embeded), które pozwalają na wykorzystanie silnika CR we własnych aplikacjach napisanych w dwóch “jedynie słusznych technologiach” :

  1. Java w środowisku Eclipse – SAP Crystal Reports, version for Eclipse
  2. C# w środowisku .NET – SAP Crystal Reports, version for Visual Studio .NET

Ale jest jeden “haczyk” – należy wykupić licencję na wykorzystywanie komercyjne silnika CR – SAP Crystal Reports runtime server license. A to już nie jest za darmo. Dodatkowo niepokój budzi zdanie “Visual Studio 2005 and Visual Studio 2008 – Requests to the runtime engine that exceed the throughput limitations will queue until a thread becomes available to process it” – co wg. mnie tłumaczy się jako aluzja, że w razie zbyt dużego wykorzystania silnika serwera raportowego może nastąpić zatrzymanie przyjmowania kolejnych zgłoszeń o wykonanie raportu i ich kolejkowanie aż poprzednie się nie skończą. W przypadku naszego rozwiązania dla naszego strategicznego klienta ze starszym silnikiem (który generuje chamsko wyjątek w przypadku osiągnięcia max. przepustowości) nie mieliśmy problemu – może limit ilości równolegle wykonywanych raportów (wątków) nie został jeszcze osiągnięty? Bardzo pouczające porównanie między pełną wersją CR 2008 a CR dla VS2010. Czego brakuje (wg. mnie najbardziej): natywnych (czyli szybszych) sterowników do baz, tzw. enhanced Web Services data driver.

Nauka Javy wg. SAP Na bazie Oracle Java tutorials:

Posted 12 grudnia 2011 by marekwmsdn in .NET, C#, CR, Interoperability, Java, Programowanie

Różniste   Leave a comment

Nauka JQ w codeAcademy –http://webhosting.pl/Naucz.sie.DOM.i.jQuery.w.interaktywnym.kursie.Codeacademy. Przeglądaj posty na facebooku od DumbLitlleMan –np. o koncentracji – http://www.dumblittleman.com/2011/11/five-simple-steps-to-improve-your.html, nauka technologii MS na hinduskich portalach – http://www.kashyapas.com/ oraz dot net rumbles.  Zaawansowane programowanie obiektowe w jS – http://www.webreference.com/js/column80/8.html i zamykanie – http://blog.morrisjohns.com/javascript_closures_for_dummies.

Inter między C# a C i Javą – http://jawinproject.sourceforge.net/jawinuserguide_net.html

Równoloegłość:

Posted 23 listopada 2011 by marekwmsdn in .NET, Asynch, C#, Interoperability, Java, MS