2016年4月25日 星期一

Python 語言教學

教學網站-

http://pydoing.blogspot.tw/2012/12/Python-Understanding-of-Python-Progamming-Language.html




由Windows編譯執行程式:

--所需軟體
python原生執行環境-  https://www.python.org/downloads/release/python-2711/
下載Windows x86 MSI installer

exe製造程式- http://www.pyinstaller.org/
下載PyInstaller 3.1.1 (zip)

wxpython視窗圖形套件- http://www.wxpython.org/download.php
下載
wxPython3.0-win64-py27

--範例程式

example.py
https://drive.google.com/file/d/0B1cKGi6s-QMTVm1odW1VU1VxZ3M/view?usp=sharing



--環境設定
 設定 環境變數 -> PATH   -  C:\Python27

--安裝步驟
1.安裝python2.711(Windows x86 MSI installer
2. 安裝wxpython(會抓取python2.711的安裝路徑)
3.使用pyinstaller
    a.使用python command 指令視窗   
    b.將路徑切換到 pyinstaller解壓縮資料夾   , example.py也放入此folder底下
    c.使用pyinstaller.py --onefile example.py 指令
    d.之後會產生一個example資料夾 ,會產生一個獨立的exe檔案


由Ubuntu編譯執行程式:

--所需軟體
python原生執行環境-
ubuntu14.04 安裝好後就已經附帶

exe製造程式- http://www.pyinstaller.org/
使用terminal指令:   sudo pip install PyInstaller   (當然pip指令要先裝好)

wxpython視窗圖形套件- http://www.wxpython.org/download.php
下載
使用terminal指令:  sudo apt-get update  
              sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n

--範例程式
example.py
https://drive.google.com/file/d/0B1cKGi6s-QMTVm1odW1VU1VxZ3M/view?usp=sharing



--環境設定
不須變數設定

--安裝步驟
上述安裝指令好,使用pyinstaller --onefile example.py

--開啟exe權限
    使用右鍵將exe檔案compress,產生tar.gz ,這樣移動到其他ubuntu系統解壓後即可直接執行

(以上為大約處理步驟)









視窗軟體設計

BCB, QT(c++), wxWidgets, GTK+(跨平台 但windows需要runtime)


UI/UX   ,   Raize  , QML ,JUCE,WPF(頗絢麗,具黑色系)

XBMC(kodi) You should be proficient in C/C++ programming language, and although not really required knowledge of DirextX and Direct3D

wxPython - 跨平台GUI設計

Python跨平台GUI設計的五大種類-
http://insights.dice.com/2014/11/26/5-top-python-guis-for-2015/

Python跨平台GUI
http://stackoverflow.com/questions/520015/cross-platform-gui-toolkit-for-deploying-python-applications
http://insights.dice.com/2014/11/26/5-top-python-guis-for-2015/
http://docs.python-guide.org/en/latest/scenarios/gui/



各種工具參考網址-
http://www.atai.org/guitool/

2016年4月19日 星期二

網域註冊

申請網址:http://www.noip.com/

申請好帳號 登入,manage DNS ->  設定 dns


2016年4月18日 星期一

port 號占用的處理方式

On Windows, from command prompt: netstat -a -n -o

check for port 8080 use:

TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 2128

In my case, PID 2128 was using 8080. 

Go to task manager to find process 2128. 

Go to view / select columns / command line

Find the offending process and see what is running it. In my case, it as a local oracle express edition that I just killed.

2016年4月14日 星期四

Spring Tool Suite(STS) - Spring framework 開發工具

1.中文顯示亂碼解決-
在web.xml 放入
 <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
       <param-name>encoding</param-name>
       <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
       <param-name>forceEncoding</param-name>
       <param-value>true</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>


2.新增project-
    new -> spring legacy project -> spring mvc project

3.做成war檔後,放入tomcat/webapp產生的缺乏jar檔的問題-
    在sts專案中,新增對應的WEB-INF/lib folder,放入mysql-connector.....jar等等 ;
  等到解war檔的時候,就有對應的lib folder

4.在STS中執行時,於url輸入網址的名稱為pom.xml中的artifactId
ex: http://localhost:8080/springmvc/register

2016年4月11日 星期一

Spring+Hibernate+Struts

IOC 依賴關係的轉移 - 高層模組不應該依賴低層模組,而是模組都必須依賴於抽象

Struts 著重的是控制物件的設計

JSF    著重於頁面流程的設計

RMI (Remote Method Invocation)  讓客戶端在使用遠端物件提供的服務時,就如同使用本地物件一樣. - 序列化格式傳遞


DAO 具備增刪改查的java類別 - ICarDAO(interface) CarDAO(class)

web.xml
-->DIspatcherServlet
    /WEB-INF/web-config.xml (View, Controller)
     /WEB-INF/model-config.xml (Model)
--------------

Hessian Burlap 透過http實現的遠程服務
Hessian - 將物件以中性的二進位訊息使用HTTP進行傳送, 頻寬較小是其優點
Burlap- 物件以XML文件格式 進行傳送,高可讀性
以上可透過Spring web框架 來使用DispatcherServlet