Stabilization--稳定期

Stabilization is the process of working out the bugs in your app. Not just from a functional standpoint, e.g.: "It

crashes when I click this button,” but also Usability and Performance. It’s best to start stabilization very early

within the development process so that course corrections can occur before they become costly. Typically,

applications go into Prototype,Alpha, Beta, and Release Candidate stages. Different people define these

differently, but they generally follow the following pattern:

稳定期是找出应用的Bug的过程,不只是来自功能方面,比如:“当我点击这个按钮就崩溃”,也来自可用性和性能。最好在开发期就启动稳定启,这样错误能在产生严重后果之前得到修正。通常,应用要经历雏型、内部测试版、公测版、候选发布版等阶段,不同的人定义的方法不同,但他们通常遵循下列的模式:

1. Prototype – The app is still in proof-of-concept phase and only core functionality, or specific parts of the

application are working. Major bugs are present.
雏型--应用只处于概念验证阶段,应用还只是最核心的功能,或者是特定的部分,主要Bug还没有处理。

2. Alpha – Core functionality is generally code-complete (built, but not fully tested). Major bugs are still present,

outlying functionality may still not be present.
内部测试版--核心功能通常完成了代码编写或构建,但没有全面测试,主要Bug仍然存在,外围功能可能仍没有形成。

3. Beta – Most functionality is now complete and has had at least light testing and bug fixing. Major known

issues may still be present.
公测版--大部分功能已完成,至少已经有了一些测试和Bug修复。已知的主要问题仍然存在。

4. Release Candidate – All functionality is complete and tested. Barring new bugs, the app is a candidate for

release to the wild.
候选发布版--所有功能已完成且经测试通过。排除了新的Bug,应用候选向外发布。

It’s never too early to begin testing an application. For example, if a major issue is found in the prototype stage,

the UX of the app can still be modified to accommodate it. If a performance issue is found in the alpha stage,

it’s early enough to modify the architecture before a lot of code has been built on top of false assumptions.

开始测试应用从来不会显得太早,比如,如果在雏形期就发现一个主要的问题,应用UX仍能修改。如果一个性能问题在内部测试期被发现,还来得及在大量代码在不能实现的设想的基础上被创建之前改变体系结构。

Typically, as an application moves further along in the lifecycle, it’s opened to more people to try it out, test it,

provide feedback, etc. For instance, prototype applications may only be shown or made available to key

stakeholders, whereas release candidate applications may be distributed to customers that sign up for early

access.

通常,当应用沿着生命周向前移动时,它被开放给更多的人来试验、测试、提供反馈,等等。举个例子,雏形应用可能仅提供给相关关键人员,相反,候选发布版可能提供给想提前访问的报名客户。

For early testing and deployment to relatively few devices, usually deploying straight from a development

machine is sufficient. However, as the audience widens, this can quickly become cumbersome. As such,

there are a number of test deployment options out there that make this process much easier by allowing you

to invite people to a testing pool, release builds over the web, and provide tools that allow for user feedback.

对于早期的测试和部署到相对较少的设备上,通常从一台发布机器上直接进行部署是能满足需要的。然而,随着使用者的增加,这将很快变得不堪重负。因此,外边有一定数量的测试部署选择可使这个过程变得十分容易,这可使你邀请人们到一个测试池,也可使你将你构建的应用发布到互联网上,并提供允许用户反馈的工具。

Some of the most popular ones are:

最流行的有:

1. Testflight (testflightapp.com) – This is an iOS product that allows you to distribute apps for testing as well as

receive crash reports and usage information from your customers.

Testflight(testflightapp.com)--这是一个iOS产品,既允许你分发应用进行测试又能收到来自你的客户的崩溃报告和使用信息。

2. LaunchPad (launchpadapp.com) – Designed for Android, this service is very similar to TestFlight.
LaunchPad (launchpadapp.com) --为Android设计,此服务与Testflight非常相似。

3.  Vessel (vessel.io) – A service for iOS and Android that lets you monitor usage, track customers and even do

A/B testing from inside your app.
Vessel (vessel.io) --为iOS和Android服务,让你监视使用、跟踪客户甚至从应用内部做A/B测试。

4.  Hockeyapp.com -- provides a similar service for iOS, Android and Windows Phone.

Hockeyapp.com--为iOS、Android 和 Windows Phone应用提供类似服务。

Distribution--分发期

Once you’ve stabilized your application, it’s time to get it out into the wild. There are a number of different

distribution options, depending on the platform.Xamarin.iOS and Objective-C apps are distributed in exactly

the same way:

一旦完成了应用的稳定期,就该将它发布出去了。有一些不同的依赖于平台的分发方式。Xamarin iOS和Object-C应用的分发方式非常相似:

1. Apple App Store – Apple’s App Store is a globally available online application repository that is built into Mac

OS X via iTunes. It’s by far the most popular distribution method for applications and it allows developers to

market and distribute their apps online with very little effort.

Apple 应用商店--Apple的应用商店是一个全球性的在线应用仓库,它通过iTunes内置于Mac OS X。它是迄今为止最流行的应用程序分发方法,允许开发者通过很小的努力就能交易和分发他们应用。

2. Enterprise Deployment – Enterprise deployment is meant for internal distribution of corporate applications

that aren’t available publicly via the App Store.
企业部署--企业部署是公司应用的内部分发,不是通过App商店对公众有效。

3.  Ad-Hoc Deployment – Ad-hoc deployment is intended primarily for development and testing and allows you

to deploy to a limited number of properly provisioned devices. When you deploy to a device via Xcode or

Xamarin Studio, it is known as ad-hoc deployment.

Ad-Hoc部署--点对点部署主要被用来开发和测试,允许你将应用部署到数量有限的专用设备上。当你通过Xcode或Xamarin Studio将应用部署到一个设备上时,就是用点对点部署。

Android--安卓

All Android applications must be signed before being distributed. Developers sign their applications by using

their own certificate protected by a private key. This certificate can provide a chain of authenticity that ties an

application developer to the applications that developer has built and released. It must be noted that while a

development certificate for Android can be signed by a recognized certificate authority, most developers do not

opt to utilize these services, and self-sign their certificates. The main purpose for certificates is to differentiate

between  different developers and applications. Android uses this information to assist with enforcement of

delegation of permissions between applications and components running within the Android OS.

所有的Android应用在分发之前必须被签名,开发者通过使用他们自己的被一个私有密钥保护的证书对自己的应用进行签名。这个证书能提供一个真实性的链,该链将应用的开发者连接到开发者已经构建和发布的应用程序上。必须注意的是,虽然一个Android开发证书能被一个被承认的证书权威签名,大部分开发却不愿使用这些服务,并自己对他们的证书进行签名。证书的主要目的是区分不同的开发者和应用程序。安卓使用此信息在运行于Andoid操作系统下的应用程序和组件之间帮助执行许可的授权。

Unlike other popular mobile platforms, Android takes a very open approach to app distribution. Devices are

not locked to a single, approved app store. Instead, anyone is free to create an app store, and most Android

phones allow apps to be installed from these third party stores.

与其他流行的移动平台不同,Android采取了一种非常开放的方法来实现app分发。设备没有被死锁在单一的被批准的app商店,相反,任何人都可以自由地创建一个app商店,而且大部分Android手机允许app从这些三方商店来安装。

This allows developers a potentially larger yet more complex distribution channel for their applications.

Google Play is Google’s official app store, but there are many others. A few popular ones are:

这给了开发者一个潜在的更大而且更复杂的通道来分发他们的应用。Google Play是谷歌的官方app商店,但有许多其他的商店,其中流行的有:

1. AppBrain

2. Amazon App Store for Android

3. Handango

4.  GetJar

Windows Phone

Windows Phone applications are distributed to users via the Windows Store.

Windows Phone应用通过Windows商店进行分发。

Developers submit their apps to the Windows Phone Dev Center for approval, after which they appear in the Store.

开发将他们的app提交到Windows Phone Dev Center,他们的app得到批准后出现在Windows 商店。

Microsoft provides detailed instructinos for deploying Windows Phone apps during development.

微软为 部署Windows Phone 应用提供了详细的说明。

Follow these steps to publish apps for beta testing and release to the store. Developers can submit their apps

and then provide an install link to testers, before the app is reviewed and published.

随着 这些步骤 可将app作为公测发行到Windows 商店 或将app发布到 Windows 商店。在app被复审和发布之前,开发者可提交我们的app并接着提供一个安装连接给测试者。

Mobile Development Considerations--移动开发考虑

While developing mobile applications isn’t fundamentally different that traditional web/desktop development

in terms of process or architecture, there are some considerations to be aware of.

Let’s take a look at common considerations and then we’ll examine platform specific considerations.

虽然开发移动应用与传统的网页或桌面应用的过程或体系结构没有根本性的区别,但仍应知道一些考虑。

Common Considerations--共同的考虑

Multitasking--多任务

There are two significant challenges to multitasking (having multiple applications running at once) on a

mobile device. First, given the limited screen real estate, it is difficult to display multiple applications

simultaneously. Therefore, on mobile devices only one app can be in the foreground at one time. Second,

having multiple applications open and performing tasks can quickly eat battery power.

Each platform handles multitasking differently, which we’ll explore in a bit.

对于在一个移动设备上的多任务(多个应用同时运行),有两个重要的挑战,第一,只有有限的屏幕空间,难以同时显示多个应用程序,所以,对移动设备上,同一时间只能有一个应用处于前台。第二,多个应用程序打开和执行任务会很快地消耗电池能量。

各平台处理多任务是有差异的,我们将略微探究一下这些差异。

Form Factor --外形尺寸

Mobile devices generally fall into two categories, phones and tablets, with a few crossover devices in between.

Developing for these form factors is generally very similar, however, designing applications for them can be

very different. Phones have very limited screen space, and tablets, while bigger, are still mobile devices with

less screen space than even most laptops. Because of this, mobile platform UI controls have been designed

specifically to be effective on smaller form factors.

移动设备通常分成两大类,手机和平板,也有少数介乎两者之间的设备。针对这些外形尺寸的开发通常是非常相似的,然而,为它们设计应用却差异很大。手机有非常有限的屏幕,而平板,虽然大些,但仍然是屏幕空间小于大部分手提电脑的移动设备,所以,移动平台UI控件是根据较小的外形尺寸来设计的。

Device and OS Fragmentation--设备和操作系统分化

It’s important to take into account different devices throughout the entire software development lifecycle:

在整个软件开发生命周期始终重视不同的设备是非常重要的。

1. Conceptualization and Planning – Because different devices can have different hardware and device

features, you must keep in mind that anapplication that relies on certain features may not work properly

on certain devices. For example, not all devices have cameras, so if you’re building a video messaging

application, some devices may be able to play videos, but not take them.

概念化和计划--因为不同的设备可能拥有不同的硬件和设备功能,你必须记住,一个依赖于某个特定功能应用程序可能在某些特定的设备上无法正常运行。比如,并非所有设备都有摄像头,则如果你生成了一个视频消息的应用,则有些可能支持播放视频,却无法获得视频。

2. Design – When designing an application’s User Experience (UX), different screen ratios and sizes

should  be kept in mind. Additionally, when designing an application’s User Interface (UI), different

screen resolutions should be considered.

设计--设计一个应用的用户体验(UX)时,要记住不同的屏幕高宽比和尺寸。另外,当设计一个应用的用户界面(UI)时,不同的屏幕分辨率应该被考虑。

3. Development – When using a feature from code, the presence of that feature should always be tested first.

For example, before using a device feature, such as a camera, always query the OS for the presence of tha

t feature first. Then, when initializing the feature/device, make sure to request currently supported from the OS

about that device and then use those configuration settings.

当用代码使用一个功能时,应总是先测试该功能是否有效。比如,在使用一个设备功能前,如摄像头,应总是首先向操作系统查询该功能是否可用。再者,当初始化功能或设备时,确保向OS查询设备是否支持并使用那些配置。

4. Testing – It’s incredibly important to test your application early and often on actual devices. Even devices

with the same hardware specs can vary widely in their behavior.

测试--及早测试应用并且在实际的设备上测试极为重要。带着相同硬件规格的设备的表现可能有很大的差异。

5.

Limited Resources--有限的资源

Mobile devices get more and more powerful all the time, but they are still mobile devices that have limited

capabilities in comparison to desktop or notebook computers. For instance, desktop developers generally

don’t worry about memory capacities; they’re used to having both physical and virtual memory in copious

quantities, whereas on mobile devices you can quickly consume all available memory just by loading a

handful of high-quality pictures.

移动设备一直都在变得越来越强大,但他们仍旧是比桌面电脑和笔记本电脑拥有更少的性能的移动设备。比如,桌面开发者通常不用担心内存的容量,他们一直使用大量的物理和虚拟内存,相反,在移动设备上,装载几张高品质的图像,就可以很快将内存用完。

Additionally, processor-intensive applications such as games or text recognition can really tax the mobile CPU

and adversely affect device performance.

另外,诸如游戏或文本识别等处理器密集型应用能加重CPU的负担,并对设备的性能产生影响。

Because of considerations like these, it’s important to code smartly and to deploy early and often to actual

devices in order to validate responsiveness.

因为上述这些考虑,机敏地编码,及早的部署到真实的设备以求得到响应证实是非常重要的。

iOS Considerations --iOS 考虑

Multitasking--多任务

Multitasking is very tightly controlled in iOS, and there are a number of rules and behaviors that your application

must conform to when another application comes to the foreground, otherwise your application will be

terminated by iOS.

在iOS中,多任务受到严格的限制,当另外的应用来到前台时,你的应用必须验证遵照一些规则和行为,否则就会被iOS中止。

Device-Specific Resources--设备专用资源

Within a particular form factor, hardware can vary greatly between different models. For instance, some devices

have a rear-facing camera, some also have a front-facing camera, and some have none.

Some older devices (iPhone 3G and older) don’t even allow multitasking.

Because of these differences between device models, it’s important to check for the presence of a feature before

attempting to use it.

在一个特定的外观尺寸范围内,在不同的模型之间,硬件的变化非常巨大,比如,有些设备带有一个后置摄像头,有些还带有前置摄像头,而有些则不带。

有些更旧的设备(如iPhone 3G和更老的)甚至不允许多任务。

因为设备模型之间的这些差异,在试图使用一个功能之前先检查该功能是否存在或可用是非常重要的。

OS Specific Constraints--OS特别约束

In order to make sure that applications are responsive and secure, iOS enforces a number of rules that

applications must abide by. In addition to the rules regarding multitasking, there are a number of event

methods out of which your app must return in a certain amount of time, otherwise it will get terminated by iOS.

Also worth noting, apps run in what’s known as a Sandbox, an environment that enforces security

constraints that restrict what your app can access. For instance, an app can read from and write to its own

directory, but if it attempts to write to another app directory, it will be terminated.

为了确保应用的响应和安全,iOS强制执行一些应用程序必须遵守的规则。除了这些关于多任务的规则外,还有一些来自app的事件方法必须在某一时间范围内返回结果,否则该app就会被iOS中止。

值得注意的是,应用运行在一个限制应用访问范围的强制安全约束且被认为是“沙盒”的环境内,比如,一个应用能在自己的目录内读和写,但如果它试图去写到另外应用的目录,则会被中止。

Android Considerations--安卓考虑

Multitasking--多任务

Multitasking in Android has two components; the first is the activity lifecycle. Each screen in an Android

application is represented by an Activity, and there is a specific set of events that occur when an

application is placed in the background or comes to the foreground. Applications must adhere to this

lifecycle in order to create responsive, well-behaved applications. For more information, see the

Activity Lifecycle guide.

Android中的多任务有两个部分,第一部分是“活动”的生命周期。Android应用中的每一“屏”都被一个“活动”所响应,而且当应用被移到后台或来到前台时,就会产生有一些明确的事件。应用程序必须遵循它的生命周期以产生响应的、有好的行为的应用。更多信息, 见  活动动生命周期 指南.

The second component to multitasking in Android is the use of Services. Services are long-running processes that exist independent of an application and are used to execute processes while the

application is in the background. For more information see theCreating Services guide.

Android中的多任务的第二部分是服务的使用,服务是一些长时运行的进程,这些进程独立于应用而存在,哪怕应用在后台,服务仍可执行这些进程。更多信息,见创建服务 指南。

Many Devices & Many Form Factors

Unlike iOS, which has a small set of devices, or even Windows Phone, which only runs on approved devices

that meet a minimum set of platform requirements, Google doesn’t impose any limits on which devices can

run the Android OS. This open paradigm results in a product environment populated by a myriad of different

devices with very different hardware, screen resolutions and ratios, device features, and capabilities.

Because of the extreme fragmentation of Android devices, most people choose the most popular 5 or 6 devices

to design and test for, and prioritize those.

iOS拥有的设备不并多,Windows Pone只能运行在经核准的设备上,这些设备需要满足很少的平台需求,Google则不同,Google不对能运行Android OS的设备强加任何限制。这种开放的范例导致了一个产品环境,无数不同的设备带着差异极大的硬件、屏幕分辨率和长宽比、设备功能和性落户其中。

由于Android设备分化极端,大部分人选择最流行的5至6种设备来用于设计和测试,并按优先级进行选择。

Security Considerations--安全考虑

Applications in the Android OS all run under a distinct, isolated identity with limited permissions. By default,

applications can do very little. For example, without special permissions, an application cannot send a text

message, determine the phone state, or even access the Internet! In order to access these features,

applications must specify in their application manifest file which permissions they would like, and when

they’re being installed; the OS reads those permissions, notifies the user that the application is requesting

those permissions, and then allows the user to continue or cancel the installation. This is an essential step

in the Android distribution model, because of the open application store model, since applications are not

curated the way they are for iOS, for instance. For a list of application permissions, see the

Manifest Permissions reference article in the Android Documentation.

Android OS 中的应用均运行在一个确切的、被隔离的、带着有限许可的身份识别之下,缺少情况下,应用能做的很少。比如,没有特殊许可,一个应用就不能改善文本信息、决定电话状态或者甚至不能访问互联网。为了访问这些功能,应用必须在它们的manifest文件中指定需要哪些许可和何时这些许可被安装。OS读取这些功能,通知用户应用正申请这些许可,并允许用户继续或取消安装。这是Android分发模型中的一个基本步骤,因为其开放的应用存储模式,因为应用不是按IOS那样被组织起来。对于应用许可列表,见Android 文献编集中的 表明许可 参考文章。

Windows Phone Considerations--Wndows Phone 考虑

Multitasking--多任务

Multitasking in Windows Phone also has two parts: the lifecycle for pages and applications, and background

processes. Each screen in an application is an instance of a Page class, which has events associated with

being made active or inactive (with special rules for handling the inactive state, or being "tombstoned”). For

more information see the Execution Model Overview for Windows Phone documentation.

Windows Phone中的多任务也有两个部分,页和应用的生命周期和后台进程,应用中每一“屏”是一个Page类的实例,Page类拥有各种事件,这些事件与被置于活动或不活动(用特殊的规则以处理非活动状态,或被墓碑化)关联起来。更多信息见  Windnows Phone 执行模型概述Phone 文档。

The second part is providing background agents for processing tasks even when the application is not running

in the foreground. More information on scheduling periodic tasks or creating resource intensive background

tasks can be found in the Background Agents Overview.

第二部分是为处理任务提供后台代理,甚至当应用没有正运行在前台时。更多关于安排周期的任务或创建资源加强后台任务的信息可后台代理概述在中发现。

DEVICE Capabilities--设备的能力

Although Windows Phone hardware is fairly homogeneous due to the strict guidelines provided by Microsoft,

there are still components that are optional and therefore require special considering while coding. Optional

hardware capabilities include the camera, compass and gyroscope. There is also a special class of low-memory (256MB) that requires special consideration, or developers can opt-out of low-memory support.

尽管由于微软提供了严格的指导原则,Windows Phone 硬件都非常一致,但仍有一些组件是可选的,所以写代码时必须予以考虑,可选硬件的性能包括摄像机、罗盘、陀螺仪。还有一种特殊的低内存(256M)类型也需要特别考虑,当然开发者也可单方选择不支持低内存。

Database--数据库

Both iOS and Android include the SQLite database engine that allows for sophisticated data storage that

also works cross-platform. Windows Phone 7 did not include a database, while Windows Phone 7.1 and

8 include a local database engine that can only be queried with LINQ to SQL and does not support

Transact-SQL queries. There is an open-source port of SQLite available that can be added to Windows

Phone applications to provide familiar Transact-SQL support and cross-platform compatibility.

iOS和Android 都包含SQLite数据引擎,该引擎允许复杂的数据储存并可工作于跨平台。Windows Phone 7不包含数据库,而Windows Phone 7.1 和8包含一个本地数据引擎,该引擎只能被LINQ to SQL查询,而且不支持Transact-SQL查询。有一个可用的 SQLite开源接口  能被加入到Windows Phone应用中来提供熟悉的Transact-SQL支持和跨平台兼容。

Security Considerations-安全考虑

Windows Phone applications are run with a restricted set of permissions that isolates them from one another

and limits the operations they can perform. Network access must be performed via specific APIs and inter-application communication can only be done via controlled mechanisms. Access to the file-system is also

restricted; the Isolated Storage API provides key-value pair storage and the ability to create files and folders

in a controlled fashion (refer to the Isolated Storage Overview for more information).

Windows Phone 应用在一组受限的许可下运行,这些许可将它们彼此隔离开来并限制它们可以执行的操作。网络访问必须通过指导的API才能执行,应用间的通讯只能通过受限的机制才能完成。访问文件系统也是受限的。独立存储API提供键值对存储和在一个受限的方法中创建文件和文件夹的能力(更多参考  独立存储概述)

An application’s access to hardware and operating system features is controlled by the capabilities listed in

its manifest file (similar to Android). The manifest must declare the features required by the application,

so that users can see and agree to those permissions and also so that the operating system allows access

to the APIs. Applications must request access to features like the contacts or appointments data, camera,

location, media library and more. See Microsoft’s Application Manifest File documentation for additiona

l information.

一个应用访问硬件和操作系统功能是受到manifest文件(类似于Android)中的性能表的限制的。Manifest必须声明应用所需的功能,这样,用户可以看见并同意那些许可,接可操作系统才允许访问对应的API。应用必须请求访问的功能类似联系人或约会数据、摄像机、本地、媒体库或更多。见微软的 应用 Manifest 文件 文档 获得更多的信息。

Summary-总结

This guide gave an introduction to the SDLC as it relates to mobile development. It introduced general

considerations for building mobile applications and examined a number of platform-specific considerations

including design, testing, and deployment.

本指南给出了SDLC的一个介绍,这是因为这涉及到移动开发。介绍了构建移动应用的通用考虑并剖析了一些指定平台的考虑,包括设计、测试和部署。

移动开发的软件开发生命周期介绍(二)相关推荐

  1. 软件测试(概念Ⅱ) · 开发模型 · 软件的生命周期 · 瀑布模型 · 螺旋模型 · 增量模型 · 迭代模型 · 敏捷模型 · scrum · 软件测试模型之 V 模型 W 模型

    一.开发模型的由来 二.软件的生命周期 三.瀑布模型(Waterfall Model) 四.螺旋模型(Spiral Model) 五.增量模型(Incremental Model) 六.迭代模型(Ra ...

  2. SpringBoot:Bean生命周期介绍

    SpringBoot:Bean生命周期介绍 前言 一.Bean 的生命周期介绍 二.具体操作顺序 前言 Bean 是 SpringBoot 中一个非常重要的组成部分,是面试中经常会问到的一个问题. 本 ...

  3. 软件开发生命周期中的设计阶段_软件的生命周期——测试人员必须了解的事

    软件的生命周期(prdctrm) 计划阶段(planning)-〉需求分析(requirement)-〉设计阶段(design)-〉编码(coding)->测试(testing)->运行与 ...

  4. 软件工程管理之《系统开发方法与项目生命周期的矛盾冲突》

    各位读者大家好,由于本文章是我在闲暇时间来迭代补充编辑的,并不是一次性编辑完成,如果影响大家的阅读感受,尽请大家谅解!!!  >>第一章:项目管理者情况 很高兴能与大家一起分享及探讨关于软 ...

  5. 安全保障基于软件全生命周期-PSP应用

    安全保障是基于软件全生命周期的,即贯穿了开发-分发-不熟-运行所有环节.在各个环节都可以进行一些安全活动保证系统安全.例如在代码开发环节从需求阶段即可加入安全的需求分析以及对应的保证策略,在代码提交前 ...

  6. 软件的生命周期和软件测试的生命周期

    软件的生命周期 : 需求分析  ->  计划  ->  设计  ->  编码  ->  测试  ->  运行维护 需求分析阶段: 该阶段对软件需求进行更深入的分析,划分出 ...

  7. 大数据开发和软件开发哪个前景好?

    大数据开发和软件开发哪个前景好?大数据开发学习有难度,零基础入门要先学习Java语言打基础,然后进入大数据技术体系的学习,学习Hadoop.Spark.Storm等知识.软件开发工程师根据不同的学科从 ...

  8. 软件的生命周期及其模型

    本博客主要介绍软件的生命周期和软件生命周期模型 一. 1.软件生命周期:一个软件产品或者系统要经历孕育.诞生.成熟.衰亡等阶段,一般称为软件生命周期(软件生存周期). 2. 软件生命周期(SDLC,软 ...

  9. ASP.NET页生命周期介绍:阶段,事件及其他

    ASP.NET页生命周期介绍:阶段,事件及其他 本文概述了asp.net的页生命周期.在页生命周期的每个阶段中,页将引发可运行您自己的代码进行处理的事件. asp.net 页运行时,此页将经历一个生命 ...

最新文章

  1. 局域网伪造源地址DDoS***解决方法
  2. GitHub 上值得关注的 iOS 开源项目
  3. shell基础09 gawk程序(上)
  4. 关于自旋锁的一些文章摘记
  5. 一个C/S结构的优秀例子: 延迟补偿在C/S架构游戏协议设计和优化中的应用
  6. HIVE 分区 分桶
  7. Java并发编程的艺术笔记(四)——ThreadLocal的使用
  8. “猜猜红桃A在哪里”——android小游戏(入门学习必备)
  9. 【资料】《模拟电子技术基础-童诗白第四版》
  10. Redis下载和安装
  11. 诺基亚5320XM 上的最好的手机浏览器,UCWEB 6
  12. DAOS ARM64调测之旅
  13. 蓝桥杯2020第二场JAVA C真题
  14. Ubuntu,CentOS安装TIM(QQ),liunx通用
  15. C语言中函数的一些基本内容
  16. 微信公众号采集方案(基于Windows逆向)
  17. 【VSPD虚拟串口】【Modbus Poll】【Modbus Slave】仿真工具的学习过程
  18. 地方门户网站发展与SEO优化瓶颈之谈
  19. NB-IOT的背景基础知识
  20. C++ ID3决策树

热门文章

  1. C语言指针(函数指针数组,二级指针)
  2. JS生成随机字符,生成一堆高逼格的乱码。。。
  3. x264学习----x264.h结构体
  4. hdu 1069 Monkey and Banana 【动态规划】
  5. ssm整合说明与模板-Spring Spring MVC Mybatis整合开发
  6. html5程序阅读题,20 个重要的 HTML5 面试题及答案
  7. 手把手教你如何利用Meterpreter渗透Windows系统
  8. gic_architecture_specification解读一
  9. 网易有道词典bug记录
  10. 前端开发练习——包含了计时功能的动画时钟