Programming Resources: Difference between revisions

From Phidgets Support
No edit summary
No edit summary
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Overview]]
[[Category:Overview]]
==Language Support==


We provide a variety of supported languages for using Phidgets. Each language has its own ''libraries'', which may be found on the language pages below, along with code examples and an in-depth API.  
We provide support for a variety of programming languages. Each language has code samples for you to use as well as an in-depth API for you to reference. If you aren't sure which language to use, we recommend using one of our core languages, because they are supported under all major operating systems and have a wide user base. [[Language - Python|Python]] is a good choice for new programmers because it's quick to set up.


Many languages also depend on the ''core drivers'' being installed as well.  These drivers can be found on the operating system pages above.
<div class="LangTableFull">
 
== Core Languages ==
Phidgets supports the following languages.  If the language you have chosen is not fully supported with examples for all products then there are some resources available for you to fill in the gaps.  First we recommend you look at the API which will show you all of the functions you can use.  Next, you should look at the code samples that ''are'' available in that language.  Finally you should look at code samples for your device in other languages.  Between those three things you should be able to piece together what you need to be doing, as always, if you run into trouble {{ContactUs|contact us}}.  If you have some flexibility in what language to use, we recommend using a '''Core Language''':
{|class="table-no-border"
 
|style="text-align:center;"|[[Image:Logo-C.png|alt=C|link=Language - C|120px]]
{| style="border:1px solid darkgray;" cellpadding="7px;"
|style="text-align:center;"|[[Image:Logo-CSharp.png|alt=C#|link=Language - C Sharp|120px]]
|-style="background: #f0f0f0" align=center
|style="text-align:center;"|[[Image:Logo-Python.png|alt=Python|link=Language - Python|120px]]
! Language || Libraries || Code Samples<sup>&dagger;</sup> || [[General Phidget Programming#Event Driven Code|Events]] || [[General Phidget Programming#Logic Code|Logic Code]] || Phidget User Base || OS Support
|style="text-align:center;"|[[Image:Logo-Java.png|alt=Java|link=Language - Java|120px]]
|style="text-align:center;"|[[Image:Logo-Javascript.png|alt=JavaScript|link=Language - JavaScript|120px]]
|-
|-
|style="text-align:center;"| [[Language - C|C]]
|style="text-align:center;"| [[Language - C Sharp|C#]]
|style="text-align:center;"| [[Language - Python|Python]]
|style="text-align:center;"| [[Language - Java|Java]]
|style="text-align:center;"| [[Language - JavaScript|JavaScript]]
|}


|colspan="5"|'''Core Languages'''
== Mobile Languages ==
{|class="table-no-border"
|style="text-align:center;"|[[Image:Logo-AndroidJava.png|alt=Android Java|link=Language - Java|120px]]
|style="text-align:center;"|[[Image:Logo-Swift.png|alt=Swift|link=Language - Swift|120px]]
|style="text-align:center;"|[[Image:Logo-ObjC.png|alt=Objective C|link=Language - Objective C|120px]]
|-
|-
|style="text-align:center;"| [[Language - Java|Java (Android)]]
|style="text-align:center;"| [[Language - Swift|Swift]]
|style="text-align:center;"| [[Language - Objective C|Objective C]]
|}


|[[Image:Icon-CSharp.png|alt=C Sharp|24x24px|link=Language - C Sharp]] [[Language - C Sharp|C#]]
== Other Languages ==
|style="background: #f0f0ff" align=center| [[Language - C Sharp#Quick Downloads|Quick Downloads]]
{|class="table-no-border"
|style="background: #ade6ab" align=center| All Devices
|style="text-align:center;"|[[Image:Logo-VBNet.png|alt=VB.Net|link=Language_-_Visual_Basic_.NET|120px]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="text-align:center;"|[[Image:Logo-LabVIEW.png|alt=LabVIEW|link=Language - LabVIEW|120px]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="text-align:center;"|[[Image:Logo-MaxMSP.png|alt=Max/MSP|link=Language_-_Max/MSP|120px]]
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]] [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]]  [[Image:Icon-Linux.png|alt=OS - Linux|24x24px|link=OS - Linux]]
|-
|-
 
|style="text-align:center;"| [[Language - Visual Basic .NET|VB]]
|[[Image:Icon-C++.png|alt=C/C++|24x24px|link=Language - C/C++]] [[Language - C/C++|C/C++]]  
|style="text-align:center;"| [[Language - LabVIEW|LabVIEW]]
|style="background: #f0f0ff" align=center| [[Language - C/C++#Quick Downloads|Quick Downloads]]
|style="text-align:center;"| [[Language_-_Max/MSP|Max/MSP]]
|style="background: #ade6ab" align=center| All Devices
|}
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
</div>
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
<div class="LangTableSmall">
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]] [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]]  [[Image:Icon-Linux.png|alt=OS - Linux|24x24px|link=OS - Linux]]
'''Core Languages'''
{|class="table-no-border"
|style="width:50px;"|[[Image:Logo-C.png|alt=C|link=Language - C|30px]]||[[Language - C|C]]
|-
|-
 
|[[Image:Logo-CSharp.png|alt=C#|link=Language - C Sharp|30px]]||[[Language - C Sharp|C#]]
|[[Image:Icon-Python.png|alt=Python|24x24px|link=Language - Python]] [[Language - Python|Python]]  
|style="background: #f0f0ff" align=center| [[Language - Python#Quick Downloads|Quick Downloads]]
|style="background: #ade6ab" align=center| All Devices
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]]  [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]]  [[Image:Icon-Linux.png|alt=OS - Linux|24x24px|link=OS - Linux]]
|-
|-
 
|[[Image:Logo-Python.png|alt=Python|link=Language - Python|30px]]||[[Language - Python|Python]]
|[[Image:Icon-Java.png|alt=Java|24x24px|link=Language - Java]] [[Language - Java|Java]]  
|style="background: #f0f0ff" align=center| [[Language - Java#Quick Downloads|Quick Downloads]]
|style="background: #ade6ab" align=center| All Devices
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]]  [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]]  [[Image:Icon-Linux.png|alt=OS - Linux|24x24px|link=OS - Linux]]
|-
|-
 
|[[Image:Logo-Java.png|alt=Java|link=Language - Java|30px]]||[[Language - Java|Java]]
|colspan="5"|'''Other Languages'''
|-
|-
 
|[[Image:Logo-Javascript.png|alt=JavaScript|link=Language - JavaScript|30px]]||[[Language - JavaScript|JavaScript]]
|[[Image:Icon-Javascript.png|alt=javascript|24x24px|link=Language - Javascript]] [[Language - Javascript|Javascript]]
|}
|style="background: #f0f0ff" align=center| [[Language - Javascript#Quick Downloads|Quick Downloads]]
'''Mobile Languages'''
|style="background: #ade6ab" align=center| All Devices
{|class="table-no-border"
|style="background: #ade6ab" align=center|
|style="width:50px;"|[[Image:Logo-AndroidJava.png|alt=Android Java|link=Language - Java|30px]]||[[Language - Java|Java (Android)]]
|style="background: #ade6ab" align=center|
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]] [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]]  [[Image:Icon-Linux.png|alt=OS - Linux|24x24px|link=OS - Linux]]
|-
|-
 
|[[Image:Logo-Swift.png|alt=Swift|link=Language - Swift|30px]]||[[Language - Swift|Swift]]
|[[Image:Icon-Visual Basic Net.png|alt=Visual Basic .NET|24x24px|link=Language - Visual Basic .NET]] [[Language - Visual Basic .NET|Visual Basic .NET]]
|style="background: #f0f0ff" align=center| [[Language - Visual Basic .NET#Quick Downloads|Quick Downloads]]
|style="background: #ade6ab" align=center| All Devices
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]]
|-
|-
 
|[[Image:Logo-ObjC.png|alt=Objective C|link=Language - Objective C|30px]]||[[Language - Objective C|Objective C]]
|[[Image:Icon-Swift.png|alt=Cocoa|24x24px|link=Language - Swift]] [[Language - Swift|Swift]]  
|}
|style="background: #f0f0ff" align=center| [[Language - Swift#Quick Downloads|Quick Downloads]]
'''Other Languages'''
|style="background: #FFC17F" align=center| Some Devices
{|class="table-no-border"
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="width:50px;"|[[Image:Logo-VBNet.png|alt=VB.Net|link=Language_-_Visual_Basic_.NET|30px]]||[[Language - Visual Basic .NET|VB]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]][[Image:Icon-iOS.png|alt=OS - iOS|link=OS - iOS|24x24px|link=OS - iOS]]
|-
 
|[[Image:Icon-ObjC.png|alt=ObjC|24x24px|link=Language - Objective C]] [[Language - Objective C|Objective C]]
|style="background: #f0f0ff" align=center| [[Language - Objective C#Quick Downloads|Quick Downloads]]
|style="background: #FFC17F" align=center| Some Devices
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]][[Image:Icon-iOS.png|alt=OS - iOS|link=OS - iOS|24x24px|link=OS - iOS]]
|-
|-
 
|[[Image:Logo-LabVIEW.png|alt=LabVIEW|link=Language - LabVIEW|30px]]||[[Language - LabVIEW|LabVIEW]]
|[[Image:Icon-LabVIEW.png|alt=LabVIEW|24x24px|link=Language - LabVIEW]] [[Language - LabVIEW|LabVIEW]]  
|style="background: #f0f0ff" align=center| [[Language - LabVIEW#Quick Downloads|Quick Downloads]]
|style="background: #ade6ab" align=center| All Devices
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]]
|-
|-
 
|[[Image:Logo-MaxMSP.png|alt=Max/MSP|link=Language_-_Max/MSP|30px]]||[[Language_-_Max/MSP|Max/MSP]]
|[[Image:Icon-MaxMSP.png|24x24px|alt=Max/MSP|link=Language - Max/MSP]] [[Language - Max/MSP|Max/MSP]]
|style="background: #f0f0ff" align=center| [[Language - Max/MSP#Quick Downloads|Quick Downloads]]
|style="background: #ade6ab" align=center| All Devices
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Checkmark.png|link=]]
|style="background: #ade6ab" align=center| [[Image:Icon-Windows.png|alt=OS - Windows|24x24px|link=OS - Windows]]  [[Image:Icon-Mac-OS.png|alt=OS - OS X|24x24px|link=OS - OS X]]
|-
 
|}
|}
<nowiki>*</nowiki> A direct USB connection would be plugging the Phidget into a USB port and using it locally.  This is the typical way to use a Phidget.  However, some platforms (such as the iPhone platform) do not have USB ports and hence can only use a Phidget over a network, via the [[Phidget Network Service]].
</div>
 
<sup>&dagger;</sup> Most languages have code samples for all Phidgets, but some have only some devices (visit the language page to learn which ones), and some only have an Interface Kit example. The Phidget Interface Kit is a common Phidget which provides an interface with analog sensors, digital input, and digital output.  So, when we choose which examples to write, the Interface Kit is often at the top of our customer's lists.

Latest revision as of 21:44, 10 August 2023


We provide support for a variety of programming languages. Each language has code samples for you to use as well as an in-depth API for you to reference. If you aren't sure which language to use, we recommend using one of our core languages, because they are supported under all major operating systems and have a wide user base. Python is a good choice for new programmers because it's quick to set up.

Core Languages

C C# Python Java JavaScript
C C# Python Java JavaScript

Mobile Languages

Android Java Swift Objective C
Java (Android) Swift Objective C

Other Languages

VB.Net LabVIEW Max/MSP
VB LabVIEW Max/MSP

Core Languages

C C
C# C#
Python Python
Java Java
JavaScript JavaScript

Mobile Languages

Android Java Java (Android)
Swift Swift
Objective C Objective C

Other Languages

VB.Net VB
LabVIEW LabVIEW
Max/MSP Max/MSP