| 

.NET C# Java Javascript Exception

1
Facebook bietet eigene Programmierschnittstellen (SDK) für JavaScript, PHP, iOS und Android an. Drittanbieter machen weitere SDKs verfügbar (siehe http://developers.facebook.com/tools/third-party-sdks/). Microsoft widmet sich für .NET scheinbar nur C#. Kann ich dieses SDK auch in VB.NET nutzen?
06.02.2013
VbFan 460 1 8
2 Antworten
0
Ich habe mich aufgrund eurer Hinweise (Danke dafür) ein wenig schlauer gemacht. Ich kann das C# SDK (die Seite hat mittlerweile auf http://csharpsdk.org/ gewechselt), tatsächlich per Verweis über das C#-Assembly anbinden. Die Quelltexte in C# sind allerdings aufweniger zu portieren, da es keine Beispiele in VB-Syntax gibt (siehe http://facebooksdk.codeplex.com/documentation?version=94 und http://facebooksdk.codeplex.com/wikipage?title=Code%20Examples&referringTitle=Documentation). Hilfreich ist in diesem Zusammenhang das C#-Beispiel unter http://blog.prabir.me/post/Facebook-CSharp-SDK-Writing-your-first-Facebook-Application.aspx. Und ein kleiner VB-Ansatz findet sich unter http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/b842d9a4-fa9f-4a31-a41b-172e224bff08/.
13.02.2013
VbFan 460 1 8
-1
Eine ähnliche Frage wurde auch hier kürzlich gestellt.

Kurze Antwort: JA.

Da man ja eigentlich bei C# und VB.Net nicht in nativen Maschinencode kompiliert sondern in das .net-Framework. Ein großer Vorteil des .net-Framework ist, dass es egal ist, mit welcher Programmiersprache programmiert wird. Die entstandene DLL (oder auch Exe) kann man in so gut wie jeder .net-Sprache benützen, sofern man die selbe Grundversion des .net-Framework benutzt.

Da unter .net-Framework C# eigentlich als Standardsprache angesehen wird (Ja das ist ein diskutabler Standpunkt, wird aber von vielen so gesehen), werden Beispiele zur Benutzung von solchen .net-Assemblies (so werden ins .net kompilierte DLLs und EXEs genannt) fast immer nur in C# angegeben, obwohl diese in so gut wie jeder anderen .net-Sprache analog gleich benutzt werden. Einfach die DLL referenzieren und den Namespace importieren (so heißt das using in VB, glaube ich), dann kann man die bereitgestellten Typen ganz gewöhnlich in VB benutzen.

PS: Wie auch in diesem bereits erwähnte Frage "Objektdatenbank NDatabase unter VB nutzen" ausgeführt, würde ich auch dir dringend empfehlen, das auch dir ein Verstehen und Nachlesen der Grundsätze von .net nicht schaden würden! Gerade das Openbook: Visual C# 2010 erklärt diese grundlegenden Hintergrund sehr gut. Anscheinend stellt auch nur eine grundlegende Erklärung des .net-Frameworks bei VB-Büchern eine nicht überschreitbare Hürde dar, die den der VB lernen sollte nicht zu interessieren hat.
09.02.2013
Stelzi79 44 1
5
-1. Hier wird einiges durcheinander gebracht.

1. .NET Code wird nicht in das .NET Framework kompiliert, sondern zu IL übersetzt. IL wird bei Programmausführung just-in-time in nativen Maschinencode übersetzt.
2. Eine .NET Assembly kann nicht nur in "so gut wie jeder anderen .net-Sprache" benutzt werden, sondern in JEDER!
3. Auch eine "selbe Grundversion des .net Framework" ist nicht erforderlich. Ich kann ohne weiteres eine .NET2.0 Assembly in einer .NET 4.0 Anwendung verwenden.
Den gutgemeinten Ratschlag, sich mit den Grundlagen auseinanderzusetzen, solltest Du auch selbst beherzigen.
ffordermaier 09.02.2013
zu 1. "IL wird bei Programmausführung just-in-time in nativen Maschinencode übersetzt" = .NET(-Framework) (oder Mono wenn man dieses verwendet)
Stelzi79 09.02.2013
zu 2: Es kann grundsätzlich jede Sprache, die sich an ganz geringen .net-Grundlagen hält UND eine Compiler in IL anbietet, mit den .Net-Framwork arbeiten. Das da jede Sprache alle Funktionen, die eine Assembly bereitstellt, auch benützen kann ist da nicht so automatisch Daher hatte ich es ja "so gut wie jeder anderen .net-Sprache" bezeichnet. Beispiel: in PHP (ja dazu gibt es .net-Compiler mit Anbindung an .net) kann da nicht die Methoden m(string text) und m(int zahl) unterscheiden.
Stelzi79 09.02.2013
zu 3: Willst du nun jetzt ganz im Ernst sagen, dass du eine im .net 4.0 kompilierte Assembly in einem .net 2.0 Projekt hinzufügen kannst und das ganze dann auch funktioniert? Umgekehrt funktioniert das meistens. Dieses Vorhaben scheitert meistens bereits am hinzufügen der Referenz im VisualStudio! Auch ist ein durcheinander mischen zwischen .net-full, .net-client, Silverlight in verschiedenen Versionen, Phone in verschiedenen Versionen, Xbox, WinRT (Windows 8) und wie sie noch alle heißen nicht möglich bzw. schneiden sich diese .net-Technologien nur mit einer eher kleineren Schnittmenge!
Stelzi79 09.02.2013
Gerade auch im .net 2.0 gibt es etliche depricated (entfernte Funktionen) die in .net 4.0 gänzlich rausgekickt wurden (in WCF wurden da etliche Funktionen rausgekickt). Im besten Fall gibt es da nur eine Depricated-Warnung und im schlimmsten Fall kompiliert das Ding zwar, aber es schmeißt Exception wie am Fließband. Wenn möglich sollte man solche Versionssprünge in .net vermeiden.
Stelzi79 09.02.2013

Stelle deine .net-Frage jetzt!