偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

有關Python編程語言進行描述

開發(fā) 后端
用C++攥寫一下Python編程語言編寫擴展模塊(動態(tài)鏈接庫),在Python程序中調用C++開發(fā)的擴展功能函數。

前幾天沒事看了一下Python編程語言中的django,正如專家學者所言,想要做一名成功的開發(fā)人員,首先必備的就是掌握另外一門語言,于是我選擇了Python編程語言進行下手。

從這幾天的學習中,我確實也發(fā)現其他語言及其框架等確實有一種與眾不同的感覺。下面我把自己這幾天看到的東西稍微作了一下總結。本文并不是django的教程,而是ahuaxuan對django的一些自己的理解,可能有些不成熟的地方,希望大家不要吝惜手中的磚頭。

Python編程語言的orm 如果有人問我最喜歡django什么,我會耗不猶豫的告訴你是django的orm,這個想法的產生完全來自于我長時間來積累的對hibernate的“不滿”,雖然從理智的角度來看。

hibernate做的是非常的正確的,因為它并不是只針對互連網而產生的,它的主要市場應該還是在企業(yè)應用上,不過把它用在互聯網并非不可以。只不過大家更多的時候會選擇ibatis之類,因為不知道hibernate的人總是會說hibernate沒有ibatis快(其實我最煩這個,片面的比較是沒有意義的)。

正是hibernate的目標是打造成java界一個全方位,全能的orm框架,所以的它學習曲線和使用的復雜度日益的提升。要完全掌握好hibernate不是一件容易的事情(不要告訴我你會點crud,知道點lazy load你就掌握好hibernate了)。#t#

再回頭來看django的orm,如果說要把hibernate說清楚需要800頁的書,那么要把django的orm說清楚,200頁就夠了(事實上它的官方文檔只有十幾頁的樣子)。下面我舉一個我正在做的例子。

這里有一個自關聯的對象(事實上django的orm是基于model,這點和ror不太一樣。有人跟我講過ror是數據庫驅動),這個對象有一個父對象,通常我們的菜單會定義成這樣的對象,這樣的菜單可以無限級向下擴展:

  1. class Category(models.Model):     
  2.     id = models.AutoField('id', primary_key=True)     
  3.     name = models.CharField(maxlength=50)     
  4.     code = models.CharField(maxlength=50)     
  5.     parentCategory = models.ForeignKey('self', 'id', null=True)     
  6.     enable = models.BooleanField()     
  7.          
  8.     def __str__(self):     
  9.         return self.name     
  10.          
  11.     class Admin:     
  12.         list_display = ('id', 'name', 'code', 'parentCategory')   

Python編程語言中又定義的Admin是為django的Admin模塊服務的。 我們定義的域模型只需要這些代碼就夠了,models.Model是父對象。所有的model對象都需要繼承這個對象,這個對象提供了很多常用的數據庫方法,不過不是基于sql的,還是基于對象的,如同Criteria一樣。下面列出常用的一些查詢Category的方法。

當然django的orm提供了很多很常用的功能,這里不一一舉例了,注意,這里我說的是提供了很多很常用的功能,至于hibenate中比較復雜的映射策略。在django中我并沒有看到。

但是我反而高興我沒有在django中找到這個功能,因為django本身的定位是快速的互連網開發(fā),它不需要太多的關注這個領域很少出現的東西,這樣帶來的優(yōu)點是學習曲線的降低和開發(fā)效率的提高。

責任編輯:chenqingxiang 來源: CSDN
相關推薦

2010-03-01 15:23:24

Python操作語言

2010-02-23 10:44:00

Python 編程語言

2010-03-15 15:45:15

Python編程語言

2010-02-24 17:22:59

Python項目

2010-02-03 16:03:44

Python系統文件

2010-03-11 17:24:27

Python編程語言

2024-06-20 13:25:16

2010-10-27 10:19:33

UnicodeJava

2010-02-26 09:55:22

Python應用程序

2010-03-01 15:57:59

Python開發(fā)工具

2010-02-26 11:20:53

Python應用

2010-02-22 13:20:58

Python中文問題

2010-02-26 15:43:02

Python線程

2010-01-11 15:55:51

C++語言

2010-01-18 17:14:50

C++語言

2010-03-01 17:15:03

Python程序開發(fā)

2010-02-23 16:06:58

Python 命令行

2010-03-19 09:39:17

Python編程語言

2010-03-02 15:10:27

Android系統

2018-10-10 14:21:06

Python 工具程序員
點贊
收藏

51CTO技術棧公眾號