zoukankan      html  css  js  c++  java
  • Some thoughts on my own O/R Mapping or Code Generation tools

    Code tells:
    Category
    	has_many Forums,
    	Name,
    	nSortOrder,
    
    Forum
    	belongs_to Category,
    	has_many Users as Moderators,
    	has_many! Threads,
    	has_many Posts,
    	has_one? Post as LastPost : Last of Posts on tPostOn,
    	Name,
    	Description?,
    	nTopics,
    	nPosts,
    	tLastPostOn?,
    	LastPostAuthor?,
    	nSortOrder,
    	canRead,
    	canReply,
    	canTopic,
    
    Thread
    	belongs_to Forum,
    	belongs_to User as Starter,
    	has_many! Posts,
    	has_one Post as LastPost : Last of Posts on tPostOn,
    	Subject,
    	tStartOn,
    	tLastReplyOn,
    	isLocked,
    	isSticky,
    
    Post
    	has_one User as Author,
    	belongs_to Thread,
    	AuthorName,
    	AuthorIp?,
    	AuthorEmail?,
    	Message max,
    	isHidingSmilies,
    	tPostOn,
    	tEditOn?,
    	EditedBy?,
    
    User
    	has_many! Threads,
    	has_many! Posts,
    	belongs_to UserGroup as Group,
    	external Id,
    	Name,
    	Phone : {PhoneNumber}
    	isUsingAvantar,
    	isUsingSignture,
    	Signature? 500,
    	nTopicsPerPage,
    	nPostsPerPage,
    	EmailSetting : EmailSettings (ShowEmail, HideEmailAllowForm, NoContact)
    	shouldShowSmilies,
    	shouldShowImages,
    	shouldShowImagesInSignature,
    	shouldShowSignatures,
    	ForumTheme,
    	nPosts,
    	tLastPostOn,
    
    Lengends
    	has_many! = could be paged;
    	? = could be null,
    	external = user asigned primary key
    	FieldName = string (255)
    	nFieldName = int
    	tFieldName = datetime
    	can/is/shouldFieldName = bool
    	: {ClassName} = ClassName (IConvertiable)
    	: (A, B, C) = Enum
    	FieldName 500 = string with length<=500
    	: Last/First/Top 100 of Collection on orderBy = no explaination needed
    	has_***, belongs_to = not properties but method, lazy loaded for ever
    
    version tracking:
    	+ for new field,
    	- for old field,
    	* for modified field, out dated line should not be deleted?
    
    code generating: 
    	both SQL and DAL, abstract BL(Entities included), skeleton for real BL
    
    why my own?
    	I know what will happen.
    	I know what is doable.
    	I write mine faster than learning others.
    
  • 相关阅读:
    脚手架自建从开始到发布
    零散点总结
    2019.3.7 chrome72下载图片卡死问题
    2019.2.18 一九年的新篇章
    2018.10.12 布局终结
    2018.7.23 放大缩小菜单
    2018.7.19 横向收缩菜单动画
    2018.6.8 openlayers.js学习(汇总)
    Elasticsearch 排序
    easyui tree树节点上移下移 选中节点加背景色
  • 原文地址:https://www.cnblogs.com/deerchao/p/716135.html
Copyright © 2011-2022 走看看