轻量级

轻量级提示

≯℡__Kan透↙ 提交于 2020-01-19 18:55:14
代码: return Scaffold( appBar: AppBar(title: Text('长按')), body: Center( child: Tooltip(//轻量级控件 包裹的控件 都有长按效果 child: Image.network('http://img.mp.itc.cn/upload/20170413/bf3c5c6a69264f08b66cabe456c460e1_th.jpg'), message: '长按有惊喜', ), ), ); 总结: /*--> */ /*--> */ // 轻量级 提示 类似于OC 三方提示MBProgressHUD Tooltip ( child:xxx // 包裹的控件 message:xx // 提示 ) 来源: https://www.cnblogs.com/pp-pping/p/12214818.html

Tinyhttpd源码分析——超轻量级的HTTP服务器

倾然丶 夕夏残阳落幕 提交于 2020-01-18 05:13:11
前言 T inyhttpd是一个不到500行的超轻量 级的 Http Server, 通过阅读这里面的源码,可以帮助大家理解服务器程序的本质。这个项目比较适合刚学习Linux服务器开发或刚学网络编程的人,因为整个项目所涉及到的知识并不多。这里面的知识点不多,但是有几个小知识若是要细究的话,还是可以发现很多问题的。 下载地址: http://sourceforge.net/projects/tinyhttpd/ https://github.com/EZLippi/Tinyhttpd 源码阅读顺序: main -> startup -> accept_request -> execute_cgi, 了解 主要工作流程后再仔细把每个函数看一看。 工作流程 : (1) 服务器启动,在指定端口或随机选取端口绑定httpd服务。 (2) 收到一个HTTP请求时 ( 其实就是listen的端口accpet的时候 ) , 创建 一个线程运行accept_request函数。 (3) 取出HTTP请求中的method (GET或POST)和url。对于GET方法,如果有携带参数,则 query_string指针指向url中?后面的GET参数。 (4) 格式化url到path数组,表示浏览器请求的服务器文件路径,在tinyhttpd中服务器文件是在htdocs文件夹下。当url以 / 结尾

Github上优秀的.NET Core项目

耗尽温柔 提交于 2020-01-17 10:56:59
原文: Github上优秀的.NET Core项目 Github上优秀的.NET Core开源项目的集合。内容包括:库、工具、框架、模板引擎、身份认证、数据库、ORM框架、图片处理、文本处理、机器学习、日志、代码分析、教程等。 Github地址: https://github.com/jasonhua95/awesome-dotnet-core , 【awesome-dotnet-core】 其中的翻译有可能有问题,大家发现了及时提出来,其他的比较好的项目也可以提出来,我会及时添加修改上去的。 一般 ASP.NET Core Documentation - 官方ASP.NET核心文档站点。 .NET Core Documentation - .NET Core,C#,F#和Visual Basic技术文档的主页,包括基本概念,入门说明,教程和示例。 .NET Core SDK - .NET Core SDK是由Microsoft和.NET社区在 GitHub 上维护的通用开发平台。 .NET Platform Standard - 旧版本和新版本的.NET之间存在差异。 Introducing .NET Standard 2.0 - 介绍.NET Standard 2.0的内容和当前.NET标准中某些缺失部分的路线图。 .NET/.NET Core代码整洁 - 适用于.NET /

轮播图轻量级写法

怎甘沉沦 提交于 2020-01-17 01:28:38
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <title>Document</title> 8 </head> 9 <style> 10 .box{ 11 width:900px; 12 height: 500px; 13 border:1px solid #000; 14 position:relative; 15 margin:auto; 16 overflow:hidden; 17 18 } 19 .box ul,.box ol{ 20 list-style:none; 21 padding: 0; 22 margin: 0; 23 } 24 .box ul li{ 25 width:900px; 26 height: 500px; 27 display:none; 28 } 29 .box ul li img{ 30 width: 900px; 31 height: 500px; 32 } 33 .box ol{ 34

轻量级SaaS在线作图工具ProcessOn

人盡茶涼 提交于 2020-01-16 07:37:40
俗话说“一图胜千言”,在办公应用领域,流程图是一个非常好的表现企业业务流程或工作岗位规范等内容的展现形式,比如去给客户做调研,回来后都要描述出客户的关键业务流程,谁、什么时候、在什么地方、负责什么事情,需要达到怎样的一个标准、为什么要达到这样的标准以及在这个业务流程中有哪些容易出错或费时费力的“点”,这个“点”就是客户的需求,只有将客户的需求放到具体的流程中才能更好地理解客户的问题所在,这也是经常讲的5W1H方法;我们如果去医院就医,也会在墙上看到一个如下图所示的业务流程图,让患者能尽快知道自己先做什么,后做什么,不至于浪费时间多跑冤枉路,大大提高了患者对医院的满意度。如果不是用图而是用文字来描述,则不易让人记住相关内容。 可以说,流程图的应用无处不在,只是我们平时的很多工作比较简单,以文字的形式描述或者把那个虚拟的图存在自己的大脑里了。如果每个人能将自己的工作或任务以流程图的形式展现出来并不断优化,可以更好地让这些知识转换为“显性知识”,沉淀积累成公司的知识库,让更多的人快速了解、知道、分享和掌握。今天就给大家推荐一个Saas(Software as a service)模式应用的流程图绘制软件: ProcessOn 。 提起流程图软件,大家熟知的是微软公司出品的Visio专业流程图软件以及Word、PowerPoint等软件中的简单应用: Visio:功能强大

进程和线程(线程是轻量级进程)(下)

99封情书 提交于 2020-01-14 18:53:03
跨线程访问 点击“测试”,创建一个线程,从0循环到10000给文本框赋值,代码如下: private void btn_Test_Click(object sender, EventArgs e) { //创建一个线程去执行这个方法:创建的线程默认是前台线程 Thread thread = new Thread(new ThreadStart(Test)); //Start方法标记这个线程就绪了,可以随时被执行,具体什么时候执行这个线程,由CPU决定 //将线程设置为后台线程 thread.IsBackground = true; thread.Start(); } private void Test() { for (int i = 0; i < 10000; i++) { this.textBox1.Text = i.ToString(); } } 运行结果: 产生错误的原因: textBox1是由主线程创建的,thread线程是另外创建的一个线程,在.NET上执行的是托管代码,C#强制要求这些代码必须是线程安全的,即不允许跨线程访问Windows窗体的控件。 解决方案: 1、在窗体的加载事件中 ,将C#内置控件( Control )类的 CheckForIllegalCrossThreadCalls 属性设置为 false ,屏蔽掉C#编译器对跨线程调用的检查。

二十二、【轻量级开源框架】EFW框架Web前端开发之JqueryEasyUI

隐身守侯 提交于 2020-01-13 04:45:46
回《 【开源】EFW框架系列文章索引 》 EFW框架源代码下载V1.2: http://pan.baidu.com/s/1hcnuA EFW框架实例源代码下载: http://pan.baidu.com/s/1o6MAKCa 前言 :EFW框架主要用于行业软件软件开发,所以软件的界面需要体现专业、漂亮、风格统一的效果;在Web方便这种界面框架还是有不少,如强大的EXT,基于Jquery的JqueryUI,还有一些国产的也都比较漂亮;而EFW框架中推荐的是JqueryEasyUI,为什么选择它了, 一是界面风格比较合适,控件也很全,已经满足系统的功能;二是JqueryEasyUI是基于Jquery,对于它的编码方式是非常舒服的,而且整个框架够轻量级;三是它的学习成本低,实例代码很全,花得几个小时熟悉一下就会使用 ;以前在项目中有用过ExtJS做界面开发,说实话用得比较痛苦,它那种编码方式不是一般人能接受的,界面都是用JS代码编写的,看起来不太直观,特别大家编码又不是太规范,日积月累最后一个页面js也是老长,最后出现对应闭合符号不对都要找半天;现在的项目都是使用JqueryEasyUI开发,那叫一个舒服啊;当然如果还是觉得JqueryEasyUI不够强大,你可以在EFW框架中非常方便的扩展你自己的界面框架; 本文要点: 1.JqueryEasyUI介绍 2

Linux安装SQLite轻量级数据库

强颜欢笑 提交于 2020-01-12 17:33:01
  SQLite,是一款 轻型的数据库 ,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的 设计目标是嵌入式的 ,而且目前已经在很多嵌入式产品中使用了它,它 占用资源非常的低 ,在嵌入式设备中,可能只需要几百K的内存就够了。它能够Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至2015年已经有15个年头,SQLite也迎来了一个版本 SQLite 3已经发布。 主流的sqlite3,占用内存小,处理时速度快,跨平台 01、下载 https://www.sqlite.org/download.html 02、安装 bin文件安装 解压下载的文件,放到 /usr/bin/ rpm文件安装 yum install -y sqlite sqlite-devel 03、运行 sqlite3 04、测试基本命令 sqlite3 test.db #创建数据库 create table mytable(id integer primary key, value text);

分享自己的超轻量级高性能ORM数据访问框架Deft

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-12 13:55:46
Deft 简介 Deft是一个超轻量级高性能O/R mapping数据访问框架,简单易用,几分钟即可上手。 Deft包含如下但不限于此的特点: 1、按照Transact-SQL的语法语义风格来设计,只要调用者熟悉基本的Transact-SQL语法即可瞬间无忧开码,大大降低了学习Deft的成本,甚至零成本。 2、性能十分不错(个人觉得易用性很重要,只要性能不拖后腿就好了),通过缓存+Emit反射IDataReader,极速获取List<T>。 3、强大的查询功能,支持使用Lambda表达式任意组装where条件,支持各种各样的运算符和括号优先级,支持给查询字段取别名。 4、支持SQLServer、MySQL、Oracle、SQLite等多数据库类型,同时也支持一个业务系统里面存在多个数据库。 5、支持事务、分页查询、排序等。 6、支持like,in等sql操作符,支持avg,count,max,min,sum等sql函数。 7、颜值高,整套语法接口设计的十分巧妙,支持Lambda 表达式,链式编程,任意组装sql,极度美观。 8、支持手写sql, List<T> Select<T>(string sql)。 9、各种映射能力,包括任意查询的结果映射,支持dynamic。 10、实体类非常简单,手写即可,不需要借助工具,也没有特性标记或者继承BaseEntity等杂七杂八的东西。 11

Day1-python轻量级爬虫

。_饼干妹妹 提交于 2020-01-09 22:53:16
爬虫:一段自动抓取互联网信息的程序。 从一个url出发访问与之关联的url 来获取目标 ;其价值在于:互联网数据,为我所用! 一个完整的爬虫架构:爬虫调度端{ url管理器,网页下载器,网页解析器} 下面是两个测试 : 关于urllib2: # -*- coding:utf8 -*- ''' Created on 2020��1��9�� @author: long.19981105 ''' import http.cookiejar import urllib.request url="http://www.baidu.com" print ('第一种方法') resp = urllib.request.urlopen(url) print (resp.getcode()) print(len(resp.read())) print ('第二种方法') request=urllib.request.Request(url) request.add_header("user-agent","Mozilla/5.0") resp2=urllib.request.urlopen(request) print(resp2.getcode()) print(len(resp2.read())) print ('第三种方法') cj=http.cookiejar.CookieJar()