变量的初始化和作用域 C#的预定义数据类型 流控制 枚举 名称空间 预处理命令 C#编程的推荐规则和约定 变量的初始化和作用域 初始化 C#有两个方法可以一确保变量在使用前进行了初始化: 变量是字段,如果没有显式初始化,创建这些变量时,其默认值为0. 方法的局部变量必须在代码中显式初始化,之后才能在语句中使用,如果在初始化之前使用了他的值,报错. 作用域 如果局部变量作用域冲突,报CS0136错. 字段与局部变量冲突,隐藏掉字段,访问被隐藏的实例字段用this关键字,静态字段使用object.f…
# -*- coding: utf-8 -*-# python:2.x__author__ = 'Administrator'#由于5,6,7,8,9,10,11主要是在包,测试之类的学习所以这边就不学习 #优化:通用原则和剖析技术print(u'过早进行优化是编程中万恶之源-------Donald Knuth') #1:优先三原则"""无论结果如何,优化是需要代价的,当代码能够正常工作时,不用会理会它(有时)可能比不惜一切代价尝试让它运行得更快要好一些当优化代码,需要3条…
#微观剖析 ''' 当找到速度很慢函数时,有时还需要做到测试某个部分函数剖析工作,这需要通过手动对一部分代码速度测试完成 ''' """ import tempfile,os,pstats,cProfile def p1(column='time',list1=5): def _p1(function): def __p1(*a,**k): s=tempfile.mktemp() p2=cProfile.Profile() p2.runcall(function,*a,**k…
#优化策略 #3个原则 """ 1a:寻找其他原因:确定第三方服务器或资源不是问题所在 2a:度量硬件:确定资源足够用 3a:编写速度测试:创建带有速度要求的场景 """ #看标题 #1a """ 往往,性能问题都会出现实际过程中,客户会提醒软件在运行和测试环境中不一样,性能问题可能是因为应用程序没有考虑到现实世界中用户数或者数据量不断增长的情况 但是,如果应用程序存在与其他应用程序之间的交互,那么首先要做的是检查瓶…
1.1 C#与.NET的关系 C#不能孤立地使用,必须与.NET Framework一起使用一起考虑. (1)C#的体系结构和方法论反映了.NET基础方法论. (2)多数情况下,C#的特定语言功能取决于.NET的功能,或依赖于.NET基类. .NET支持的一些特性,C#并不支持.C#语言支持的另一些特性,.NET却不支持. 1.2 公共语言运行库(CLR) 1.2.1 平台无关性 .NET Framework 的核心是其运行库环境,称为公共语言运行库(CLR)或.NET运行库. 通常将CLR控制…
背景 开始时间:2019/09/18 21:30 Spring5高级编程 版次:2019-01-01(第5版) Spring5最新版本:5.1.9 CURRENT GA 官方文档 Spring Framework官网 GitHub地址 目录 第1章 Spring介绍 1.1. 什么是Spring Spring被描述为构建Java应用程序的轻量级框架. 轻量级指的并不是类的数量或发布的大小,而是整体性定义Spring原则:最轻的影响. 1.1.1. Spring框架的演变 Spring 4.0x…
读<C#高级编程>第1章 .Net机构体系笔记 网红的话:爸爸说我将来会是一个牛逼的程序员,因为我有一个梦,虽然脑壳笨但是做事情很能坚持. 本章主要是了解.Net的结构,都是一些概念,并没有可操作的代码.但是这些概念有联系,但深刻理解必须要有全局思维和实践基础. 目录: C#与.Net的关系 公共语言运行库(CLR) 中间语言 程序集 .NET Framework类 名称空间(命名空间):避免类名冲突的一种方式. 用C#创建.Net应用程序(介绍一堆产品概念) C#在.Net企业体系结构中的重…
在应用程序中至少包含一个用来处理应用程序的主UI功能的主界面屏幕.这个主界面一般由多个Fragment组成,并由一组次要Activity支持.要在屏幕之间切换,就必须要启动一个新的Activity.一般的Activity都占据了整个显示屏,但可以创建成半透明或二者浮动的Activity. 一.创建Activity 通过继承Activity类可以创建一个Activity窗口,基本框架如下: 1 public class MyActivity extends Activity { 2 @Overri…
C#高级编程9 第18章 部署 使用 XCopy 进行部署 本主题演示如何通过将应用程序文件从一台计算机复制到另一台计算机来部署应用程序. 1.将项目中生成的程序集复制到目标计算机,生成的程序集位于项目中的bin\debug目录下 2.在开发计算机上找到vcredist_x86.exe复制到目标计算机 3.在目标计算机运行vcredist_x86.exe,安装所需C++运行库 4.应用程序运行 使用ClickOne进行部署 百度经验使用ClickOne发布Windows应用程序 工具/原料  …
C#高级编程9 第17章 使用VS2013 编辑定位到 如果默认勾选了这项,请去掉勾选,因为勾选之后解决方案的目录会根据当前文件选中. 可以设置项目并行生成数 版本控制软件设置 所有文本编辑器行号显示 启用编辑继续 收集调试信息,将影响性能 Code Compare这是扩展与更新里面的插件,安装之后才会显示,用来比较代码是否相同 nuget包源配置,提供了nuget更新的数据源 目标框架的设置影响到项目基础框架的引用,不同目标框架的项目之间不能互相引用. 不安全代码和警告等级可能会影响生成 特定…
C#高级编程9 第16章 错误和异常 了解这章可以学会如何处理系统异常以及错误信息. System.Exception类是.NET运行库抛出的异常,可以继承它定义自己的异常类. try块代码包含的代码是可能发生异常的代码catch块代码包含发生异常之后处理错误情况finally块代码用于清理资源以及无论是否出现异常都需要处理的功能代码 对于系统异常和自定义异常都来自Exception类,可以定义多个catch块,处理不同异常的错误. System.Exception类的Data属性可以提供异常的…
第12章 使用Spring远程处理 12.4 在Spring中使用JMS 使用面向消息的中间件(通常成为MQ服务器)是另一种支持应用程序间通信的流行方法.消息队列(MQ)服务器的主要优点在于为应用程序集成提供了异步和松耦合的方式.在Java中,JMS是连接到MQ服务器以发送或接收消息的标准.MQ服务器维护应用程序可以连接并发送和接受消息的队列即主题列表. 队列 队列用于支持点对点消息交换模型.当一名生产者向队列发送消息时,MQ服务器会将消息保留在队列中,并在消费者下次连接时将消息传递给一名消费者…
类和结构的区别 类成员 匿名类型 结构 弱引用 部分类 Object类,其他类都从该类派生而来 扩展方法 3.2 类和结构 类与结构的区别是它们在内存中的存储方式.访问方式(类似存储在堆上的引用类型,而结构是存储在栈上的值类型)和它们的一些特征. 语法上,类与结构非常相似,主要区别是结构使用关键字 struct 代替 class 来声明. 3.3 类成员 3.3.1 数据成员 数据成员是包含类数据—字段.常量和事件的成员. 3.3.2 函数成员 函数成员提供了操作类中数据的某些功能,包括方法.属…
第一次写这玩意,不知道什么时候能写完,今天项目比较近,期望年底能看完吧. 先定个小目标 20201228 完成 第1章 Spring介绍 第2章 入门 第3章 在Spring中引入IoC和DI 第4章 详述Spring配置和Spring Boot 第5章 Spring AOP 第6章 Spring JDBC支持 第7章 在Spring中使用Hibernate 第8章 在Spring中使用JPA 2进行数据访问 第9章 事务管理 第10章 使用类型转换和格式化进行验证 第11章 任务调度 第12章…
数学的复习,4^-2即是1/4/4的意思, 4^2是1*2*2的意思,而10^-2为0.01! 7.2运算符 符号 说明 例   ++ 操作数加1 int i=3; j=i++; 运算后i的值为4,j的值为3     int i=3; j=++i; 运算后i的值为4,j的值为4 -- 操作数减1 int i=3; j=i--; 运算后i的值为2,j的值是3     int i=3, j=--; 运算后i的值为2,j的值是2 && 执行逻辑运算,检查两个表达式是否为真 int a=5;(a&…
一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书,也看过一些,但好像没有留下什么印象,今天再看,依然觉得像新的一样.很大的原因我想是一直以来都在用windows(用windows做开发为什么学不到真正的技术,我想大家都懂的),当然知识结构不完整,学习能力这些就不说了.所以,对于那些致力于想在Linux下做开发的人来说,这本说一定是强推的. 如果你分得清wr…
1.在html中使用JavaScript 1.  <script> 元素 <script>定义了下列6个属性: async:可选,异步下载外部脚本文件. charset:可选,通过src属性指定代码的字符集,大多浏览器会忽略这个值,所以很少人使用 language:已放弃 src:可选,外部脚本的地址 type:可选,现在不推荐用“text/javascript”,考虑到约定俗成和最大限度的浏览器兼容,目前type属性的值还是text/javascript,不过,这个属性并不是必需…
第9章,装饰网站导航 限制访问,处于隐私方面考虑,浏览器已经开始限制可以对伪类:visited应用哪些CSS属性了.其中包括对已访问过的链接定义color.background-color.border-color等样式(除非已经为那些链接的正常状态定义了颜.背景色和边框色) 对于<a>标签可以对所有不同的访问状态设置样式,但要让样式有效,必须以特定的顺序指定链接:link.visited.hover.active CSS3按钮生成器:http://css3button.net CSS3按钮优…
Github https://github.com/gongluck/Windows-Core-Program.git //第12章 纤程.cpp: 定义应用程序的入口点. // #include "stdafx.h" #include "第12章 纤程.h" LPVOID g_Covert = nullptr; DWORD g_index = 0; VOID WINAPI FiberFun(LPVOID lpFiberParameter) { //纤程参数 LPV…
C#高级编程9 内存管理和指针 后台内存管理 1) 值数据类型 在处理器的虚拟内存中有一个区域,称为栈,栈存储变量的浅副本数据,通过进入变量的作用域划分区域,通过离开变量的作用域释放. 栈的指针指向栈保留的内存块的末尾,栈是向下填充的,比如说内存是4g,,那么就从4g开始直至占用0g,每一个区域的划分都由下一个空闲存储单元. 2) 引用数据类型 变量的生存期是互相嵌套的,一般情况下变量的生存期在一个方法中定义会在一个方法外结束,不过有时候需要在方法外数据仍是可用的,这时候需要用到引用类型. 引用…
第12章 类和动态内存分配 1. 静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域运算符来指出静态成员所属的类.但如果静态成员是整形或枚举型const,则可以在类声明中初始化. P426-P427类静态成员的声明和初始化 //strnbad.h class StringBad { private: static int num_strings; - }; //strnbad.cpp int StringBad::num_strings = 0; 不能在类声明中初始化静态…
第6章 Spring JDBC支持 Spring官方: 位于Spring Framework Project下. 文档: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/data-access.html#jdbc MySQL通常更广泛地用于Web应用程序开发,特别是Linux平台上.PostgreSQL对Oracle开发人员更友好,因为它的过程语言PLpgSQL非常接近Oracle的P…
第5章 Spring AOP 面向切面编程(AOP)是面向对象编程(OOP)的补充.AOP通常被称为实施横切关注点的工具.术语横切关注点是指应用程序中无法从应用程序的其余部分分解并且可能导致代码重复和紧密耦合的逻辑.通过使用AOP模块化各个逻辑部分(横切关注点),可以将它们应用于应用程序的多个部分,而无需复制代码或创建硬性依赖关系. 5.1 AOP概念 AOP的核心概念: 连接点 通知 切入点 切面 织入 目标对象 引入 5.2 AOP的类型 AOP分为静态AOP和动态AOP.他们之间的区别在于…
第16章 Web应用程序 16.3 MVC和Spring MVC介绍 16.3.3 Spring MVC WebApplicationContext层次结构 在Spring MVC中,DispatcherServlet是接受请求并将它们分发给相应控制器的中央servlet.在Spring MVC应用程序中,可以有多种用于不同目的的DispatcherServlet实例,并且每个DispatcherServlet都有自己的WebApplicationContext配置,该配置定义了servlet级…
第9章 事务管理 一些名词: 2PC(2 Phase Commit) XA协议 JTS(Java Transaction Service) JCA(Java EE Connector Architecture) JPA(Java Persistence API) JPQL(Java Persistence Query Language) Spring支持声明式和编程式事务管理. 9.1 研究Spring事务抽象层 在使用事务时,必须选择是使用全局事务(分布式事务)还是本地事务.本地事务特定于单个…
第11章 任务调度 任务调度由三部分组成: 任务:需要在特定时间运行或定期运行的业务逻辑块: 触发器:指定任务应该执行的条件: 调度程序:根据来自触发器的信息执行任务: 11.2 Spring中的任务调度 在Spring应用程序中可以使用多种方法触发任务的执行. 一种方法是通过已存在于应用程序部署环境中的调度系统从外部触发作业.作业触发可以通过向Spring应用程序发送RESTful-WS请求并让Spring的MVC控制器触发任务来完成. 另一种方法是在Spring中使用任务调度支持.Sprin…
第10章 使用类型转换和格式化进行验证 在应用程序开发中,数据验证通常与转换和格式化一起被提及.因为数据源的格式很可能与应用程序中所使用的格式不同. 名词缩写: SPI(Service Provider Interface):服务提供接口 10.1 依赖项 <!--validation--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-bo…
第4章 详述Spring配置和Spring Boot 4.2 管理bean生命周期 通常,有两个生命周期事件与bean特别相关:post-initialization和pre-destruction. 一旦完成bean的所有属性值设置以及所配置的依赖项检查,就会触发post-initialization事件.在销毁bean实例之前,pre-destruction事件被触发.对于原型作用域的bean来说,不会触发pre-destruction事件. Spring为这两个事件提供了三种机制: 基于接…
第3章 在Spring中引入IoC和DI 依赖注入是IOC的一种特殊形式,尽管这两个术语经常可以互换使用. 3.1 控制反转和依赖注入 IOC的核心是DI,旨在提供一种更简单的机制来设置组件依赖项,并在整个生命周期中管理这些依赖项.需要某些依赖项的组件通常被称为依赖对象,或者在IOC的情况下被称为目标对象. IOC可以分解为两种子类型:依赖注入(DI)和依赖查找. 3.2 控制反转的类型 使用依赖查找时,组件必须获取对依赖项的引用,而是用依赖注入时,依赖项将通过IOC容器注入组件. 依赖查找有两…
1.运算符重载:运算符重重载的关键是在对象上不能总是只调用方法或属性,有时还需要做一些其他工作,例如,对数值进行相加.相乘或逻辑操作等.例如,语句if(a==b).对于类,这个语句在默认状态下会比较引用 a 和 b .检测这两个引用是否指向内存中的同一个地址,而不是检测两个实例是否包含相同的数据.然而对于 string 类,这种操作就会重写,于是比较字符串实际上就是比较每个字符串的内容.可以对自己的类进行这样的操作. 对于结构,"==" 运算符在默认状态下是不做任何工作.试图比较两个结…