这周学习界面和应用编程.
编程语言
- hello world
- C, GCC, C++, GDB (debugger), DDD (graphical viewer)
- Java, OpenJDK, IcedTea, Scala, Android
- Haskell
- Processing, Wiring, Arduino
- data flow: LabVIEW, Simulink, Max (for music), Pd, Scratch (for kids), App Inventor, Grasshopper, Firefly
- Bash, Tcl
- Interpretive language: Python, tutorial, Perl, Ruby
- JavaScript, JavaScript, Node.js, V8 (Google Chrome), npm (package manager for node), npm, WebAssembly (compile js)
- APL
设备接口
- for serial communication: RS/EIA/TIA 232/422/485, pySerial, serialport, serialport
- USB - serial:FTDI, libFTDI, python-ftdi, node ftdi lib
- USB, PyUSB, node usb lib
- IrDA, python-irda
- GPIB, VISA, PyVISA: Control your instruments with Python — PyVISA 1.8 documentation
- IOT: MQTT, XMPP
- Native netwrok interface: socket, dgram, net, node websocket package
数据接口
用户界面
- Tk, Tkinter: hello.load.45.py
- wxWidgets, wxPython: panel_png_path.py
- Qt (antimony), PyQt
- GTK, PyGTK
- PyGTK, PyClutter
- Kivy(cross platform)
- forms, forms
- Framworks: Require, Require, Angular, Angular, Ember, Ember, Meteor, Babel
图形
- low level: X Windows
- java: AWT, JFC, Swing
- Canvas
- SVG
- 3D graphics: WebGL, Three.js
- OpenGL, GLUT, GLUT
- CG: RenderMan, RenderMan, Pixie
- complex data: VTK, pyvtk, pyvtk
- 3D BIO data: OpenVDB
- Game engine: Unity
- GPU: CUDA, OpenCL
多媒体
数学
- SciPy, NumPy, IPython, Jupyter
- low level lib: Netlib, BLAS, LINPACK, LAPACK
- MATLAB, Octave
- matplotlib, Seaborn
- R, RPy, ggplot2
- symbolic: Mathematica, Mathematica, SymPy
- typed arrays, web workers, file reader
- Math.js, Math.js, Science.js
- jqPlot, D3, Highcharts
- signal processing, modeling