畢業(yè)設(shè)計-齒輪油泵的生產(chǎn)管理系統(tǒng)設(shè)計
畢業(yè)設(shè)計-齒輪油泵的生產(chǎn)管理系統(tǒng)設(shè)計,畢業(yè)設(shè)計,齒輪,油泵,生產(chǎn)管理,系統(tǒng),設(shè)計
英文原文Introducing C#C#-pronounced “See Sharp”-is a programming language designed for Microsoft’s .NET platform. Since its first release in 2002, C# has found many roles. It is widely used on the server side of websites, and also on both the client and server in line-of-business Windows desktop applications. You can write smartphone user interfaces and Xbox 360 games in C#. More recently, Microsoft’s Silverlight platform has made C# an option for writing Rich Internet Applications that run in a web browser. But what kind of language is C#? To understand a language well enough to use it effectively, it’s not enough to focus purely on the details and mechanisms, although we’ll be spending plenty of time on those in this book. It is equally important to understand the thinking behind the details. So in this chapter, we’ll look at what problems C# was built to solve. Then we’ll explore the style of the language, through aspects that distinguish it from other languages. And we’ll finish the chapter with a look at the latest step in the evolution of C#, its fourth version.Why C#? Why .NET?Programming languages exist to help developers be more productive. Many successful languages simplify or automate tedious tasks that previously had to be done by hand. Some offer new techniques that allow old problems to be tackled more effectively, or on a larger scale than before. How much difference C# can make to you will depend on your programming background, of course, so it’s worth considering what sorts of people the language designers had in mind when they created C#.C# is aimed at developers working on the Windows platform, and its syntax is instantly familiar to users of C or C++, or other languages that draw from the same tradition, such as JavaScript and Java. Fundamental language elements such as statements, expressions, function declarations, and flow control are modeled as closely as possible on their equivalents in C family languages.A familiar syntax is not enough of a reason to pick a language, of course, so C# offers productivity-enhancing features not found in some of its predecessors. Garbage collection frees developers from the tyranny of common memory management problems such as memory leaks and circular references. Verifiable type safety of compiled code rules out a wide range of bugs and potential security flaws. While C or C++ Windows developers may not be accustomed to those features, they will seem old hat to Java veterans, but Java has nothing to compete with the “LINQ” features C# offers for working with collections of information, whether in object models, XML documents, or databases. Integrating code from external components is remarkably painless, even those written in other languages. C# also incorporates support for functional programming, a powerful feature previously most commonly seen in academic languages.Many of the most useful features available to C# developers come from the .NET Framework, which provides the runtime environment and libraries for C#, and all other .NET languages, such as VB.NET. C# was designed for .NET, and one of the main benefits of its close relationship with the .NET Framework is that working with framework features such as the class library feels very natural.The .NET Framework Class LibraryWorking in C# means more than using just the language-the classes offered by the .NET Framework are an extremely important part of the C# developer’s everyday experience (and they account for a lot of this book’s content). Most of the library functionality falls into one of three categories: utility features written in .NET, wrappers around Windows functionality, and frameworks.The first group comprises utility types such as dictionaries, lists, and other collection classes, as well as string manipulation facilities such as a regular expression engine. There are also features that operate on a slightly larger scale, such as the object models for representing XML documents.Some library features are wrappers around underlying OS functionality. For example, there are classes for accessing the filesystem, and for using network features such as sockets. And there are classes for writing output to the console, which we can illustrate with the obligatory first example of any programming language book, shown in Example 1-1.Example 1-1. The inevitable “Hello, world” exampleclass Program{static void Main(){System.Console.WriteLine(“Hello, world“);}}We’ll examine all the pieces shown here in due course, but for now, note that even this simplest of examples depends on a class from the library-the System.Console class in this case-to do its job.Finally, the class library offers whole frameworks to support building certain kinds of applications. For example, Windows Presentation Foundation (WPF) is a framework for building Windows desktop software; ASP.NET (which is not an acronym, despite appearances) is a framework for building web applications. Not all frameworks are about user interfaces-Windows Communication Foundation (WCF) is designed for building services accessed over the network by other computer systems, for instance.These three categories are not strict, as quite a few classes fit into two. For example, the parts of the class library that provide access to the filesystem are not just thin wrappers around existing Win32 APIs. They add new object-oriented abstractions, providing significant functionality beyond the basic file I/O services, so these types fit into both the first and second categories. Likewise, frameworks usually need to integrate with underlying services to some extent—for example, although the Windows Forms UI framework has a distinctive API of its own, a lot of the underlying functionality is provided by Win32 components. So the three categories here are not strict. They just offer a useful idea of what sorts of things you can find in the class libraries.Language StyleC# is not the only language that runs on the .NET Framework. Indeed, support for multiple languages has always been a key feature of .NET, reflected in the name of its runtime engine, the CLR or Common Language Runtime. As this name implies, .NET is not just for one language—numerous languages have access to the services of the .NET Framework class library. Why might you choose C# over the others?We already mentioned one important reason: C# was designed specifically for .NET. If you are working with .NET technologies such as WPF or ASP.NET, you’ll be speaking their language if you work in C#. Compare this with C++, which supports .NET through extensions to the original language. The extensions are carefully thought out and work well, but code that uses .NET libraries just looks different from normal C++, so programs that bridge the worlds of .NET and standard C++ never feel completely coherent. And the dual personality often presents dilemmas-should you use standard C++ collection classes or the ones in the .NET class library, for example? In native .NET languages such as C#, such questions do not emerge.F# is the odd one out here. It’s a functional programming language, heavily influenced by a language called ML. Back in 1991, when your authors were first-year students, our university’s computer science course chose ML for the first programming language lectures in part because it was so academic that none of the students would previously have come across anything like it. F# is still at the academic end of the spectrum despite having climbed far enough down the ivory tower to be a standard part of a mainstream development environment. It excels at complicated calculations and algorithms, and has some characteristics that can help with parallel execution. However, as with many functional languages, the cost of making some hard problems easier is that a lot of things that are easy in more traditional languages are remarkably hard in F#- functional languages are adept at complex problems, but can be clumsy with simple ones. It seems likely that F# will mostly be used in scientific or financial applications where the complexity of the computation to be performed dwarfs the complexity of the code that needs to act on the results of those calculations.Managed CodeThe .NET Framework provides more than just a class library. It also provides services in subtler ways that are not accessed explicitly through library calls. For example, earlier we mentioned that C# can automate some aspects of memory management, a notorious source of bugs in C++ code. Abandoning heap-allocated objects once you’re done with them is a coding error in C++, but it’s the normal way to free them in .NET. This service is provided by the CLR-the .NET Framework’s runtime environment. Although the C# compiler works closely with the runtime to make this possible, providing the necessary information about how your code uses objects and data, it’s ultimately the runtime that does the work of garbage collection.Depending on what sorts of languages you may have worked with before, the idea that the language depends heavily on the runtime might seem either completely natural or somewhat disconcerting. It’s certainly different from how C and C++ work-with those languages, the compiler’s output can be executed directly by the computer, and although those languages have some runtime services, it’s possible to write code that can run without them. But C# code cannot even execute without the help of the runtime. Code that depends entirely on the runtime is called managed code.Managed compilers do not produce raw executable code. Instead, they produce an intermediate form of code called IL, the Intermediate Language. The runtime decides exactly how to convert it into something executable. One practical upshot of managed code is that a compiled C# program can run on both 32-bit and 64-bit systems without modification, and can even run on different processor architectures-it’s often possible for code that runs on an ARM-based handheld device to run unmodified on Intel-based PCs, or on the PowerPC architecture found in the Xbox 360 game console.If you’re a Java developer, all of this will sound rather familiar—just substitute bytecode for IL and the story is very similar. Indeed, a popular but somewhat ignorant “joke” among the less thoughtful members of the Java community is to describe C# as a poor imitation of Java. When the first version of C# appeared, the differences were subtle, but the fact that Java went on to copy several features from C# illustrates that C# was always more than a mere clone. The languages have grown more obviously different with each new version, but one difference, present from the start, is particularly important for Windows developers: C# has always made it easy to get at the features of the underlying Windows platform.Continuity and the Windows EcosystemSoftware development platforms do not succeed purely on their own merits-context matters. For example, widespread availability of third-party components and tools can make a platform significantly more compelling. Windows is perhaps the most striking example of this phenomenon. Any new programming system attempting to gain acceptance has a considerable advantage if it can plug into some existing ecosystem, and one of the biggest differences between C# and Java is that C# and the .NET Framework positively embrace the Windows platform, while Java goes out of its way to insulate developers from the underlying OS.While .NET offers features to ease integration with the underlying platform, there is still support for non-Windows systems. Microsoft’s Silverlight can run C# and VB.NET code on Mac OS X as well as Windows. There’s an open source project called Mono which enables .NET code to run on Linux, and the related Moonlight project is an open source version of Silverlight. So the presence of local platform integration features doesn’t stop C# from being useful on multiple platforms-if you want to target multiple operating systems, you would just choose not to use any platform-specific features.So the biggest philosophical difference between C# and Java is that C# provides equal support for direct use of operating-system-specific features and for platform independence. Java makes the former disproportionately harder than the latter.The latest version of C# contains features that enhance this capability further. Several of the new C# 4.0 features make it easier to interact with Office and other Windows applications that use COM automation-this was a weak spot in C# 3.0. The relative ease with which developers can reach outside the boundaries of managed code makes C# an attractive choice-it offers all the benefits of managed execution, but retains the ability to work with any code in the Windows environment, managed or not.Database DesignNeeds analysis to investigate and analyze the user's business activities and the use of data and clarify the data type, scope, quantity, and exchange their business activities, and determine the requirements of the users of the database system and a variety of constraints, formation user needs Statute.The conceptual design of the user asked to describe the real world (which may be a factory, a shopping mall or a school, etc.), at which various classification, aggregation and generalization, an abstract conceptual data model. This conceptual model should reflect the various departments of the real world information structure, the flow of information, information of mutual restraint relations and various departments of information storage, query and processing requirements. That the model should avoid specific implementation details of the database on the computer, represented an abstract form. Expansion entity - contact model (ER model), for example, the first step is explicitly contained in the real world entities and their attributes, the links between the entities and information constraints, which gives each partial description of the information department referred to as a partial view of the user (in the database). Fragmentary view of a plurality of users previously obtained in the second step and then integrated into a global view of the real world, i.e. the user to be described the conceptual data model.The logical design work is a conceptual data model of the real-world design into a logical database model that is adapted to a particular database management system supported by the logical data model. At the same time, may be needed for a variety of data processing applications to produce the corresponding logical sub-mode. The result of this step designed the so-called “l(fā)ogical database.Physical designSelected the most suitable for the specific application tasks according to the specific database management system provides a variety of storage structures and access methods depends on the physical design measures for a specific computer architecture, the physical storage structure (including the file type, the index structure and data storage order bit logic), access method and access path. The result of this step the design is called “physical database.Verify the designOn the basis of the design, data collection and the establishment of a specific database, run some typical application tasks to verify the correctness and rationality of the database design. In general, a large database design process often need to go through multiple cycles repeated. When a step of the design problem is found, you may need to return to the front to be modified. Therefore, the database design should consider the possibility and convenience to modify the design in the future.Operation and maintenance of designThe database system was put into operation process, must constantly adjust and modify it.So far, database design, a lot of work still needs to do manually, in addition to a relational database has a set of more complete data the paradigm theory can be used to partially guide the database design, lack of a comprehensive database design theory, methods and tools, database design, automated or semi-automated design interactive. Database design future research direction is to study the theory of database design, seeking to more effectively express the semantic relationship data model to provide automatic or semi-automatic design tools and integrated development environment, the design of the various stages of the database design engineering, more standardized and more convenient and easy, so fully embodies the advanced ideas and methods of software engineering in the design of the database.Forming processRequirements analysis phase: the application requirements of individual usersConceptual design phase: the formation of machine-independent features, independent of the various DBMS products conceptual model (ER diagram)Logic design stage: First convert the ER diagram specific database products support data model, such as the relational model, a database logical pattern; based on user requirements, safety considerations, on the basis of the basic table and then create the necessary View (View), the formation of the outer mode of the dataPhysical design phase: physical storage arrangement according to the DBMS characteristics and processing requirements, indexing, and database mode is formed.Systems AnalysisSystems Analysis (Systems Analysis) The term was first used in the 1930s, was based on management problems as the main application object, a major in management information systems and critical stage, a key figure in this stage is responsible for systems analysts, The key question is to complete this stage of the task communication between developers and users. In the 1940s, due to the success of its application, has been further developed. Decades later, is the study of large-scale systems, or to create a complex system, widely used system analysis method.TaskSystematic analysis of the main task is to get detailed investigation of the system documentation focused, analysis of the organization within the overall management status and information processing. It focuses on the analysis of the whole process from the business point of view. The main contents of the analysis are: business and data flow is smooth, is reasonable; relationship between data, business processes and implementation of management functions; reform of the old system management mode and the management of the new system implementation of the method is feasible. Systems aim of the analysis is to determine the needs of users and their solutions down results include: the need to determine the understanding of the development of the existing organization and management; demand of the users of the information systems function; data and business processes; management capabilities and management data index system; system and the proposed changes and new management model. The content is determined by analysis of the system implemented on the basis of system design, system in the future.中文譯文介紹 C#C#,讀作“see sharp”——是專門為.NET 平臺設(shè)計的編程語言。從 2002 年首次發(fā)布以來,C# 創(chuàng)建了許多角色。它廣泛的應(yīng)用于網(wǎng)站服務(wù)器端以及 windows 桌面應(yīng)用程序的客戶端和服務(wù)器上。你可以用 C#編寫智能手機的用戶界面和 Xbox 360 游戲。最近,微軟的Sliverlight 平臺使得可以用 C#編寫可以在網(wǎng)頁瀏覽器上運行的 Internet 應(yīng)用程序。但是什么樣的語言是 C#?為了很好的了解一種語言并且有效的應(yīng)用,僅僅專注于細(xì)節(jié)和機制是不夠的,雖然在這本書中我們也將花費大量的時間來了解這些東西,但是同樣重要的是了解這些細(xì)節(jié)之后的東西。因此,在本章中,我們將要了解 C#建立一個什么樣的問題解決機制。因此,我們將探討這種語言的風(fēng)格,并且通過各個方面來區(qū)別 C#與其他語言。并且我們將在了解 C#的最新演變 ——第四個版本。編程語言的存在,可以讓開發(fā)人員的開發(fā)工作更加的有效率。許多成功的編程語言都簡化或者自動化了以前要靠繁瑣的步驟才能完成的任務(wù)。有些提供新技術(shù),使得老問題可以比以前更加有效或者在更大的規(guī)模上得到解決。當(dāng)然,C#可以給你帶來多大的差異取決于你的編程背景,所以這值得考慮,語言設(shè)計人員在開發(fā) C#的時候考慮了哪些種類的人。C#是針對 windows 平臺上的開發(fā)的,并且其語法跟使用 C、C++ 或者其他編程語言的編程人員的編程傳統(tǒng)相似,如 JavaScript 和 Java 繪制?;菊Z言元素如語句、表達式、函數(shù)聲明和流量控制,盡量與 C 家族語言接近。當(dāng)然,一個熟悉的語法這個理由并不足夠來選擇一個語法,所以 C#提供了一個生產(chǎn)增強特性,這個特性在它之前的語言中并沒有。垃圾回收機制把開發(fā)人員從常見的內(nèi)存管理問題的暴政中解救出來,如內(nèi)存泄漏和循環(huán)引用。編譯代碼可驗證類型安全機制規(guī)則了廣泛的錯誤和潛在的安全漏洞。但是 C 或 C++的 windows 開發(fā)人員可能不習(xí)慣這些功能,他們覺得這是 Java 淘汰下來的舊帽子,但是無論在對象模型, XML 或者數(shù)據(jù)庫中,Java 都沒有任何東西能夠媲美 C#為搜集信息工作所提供的 “LINQ”功能。即使用其他語言編寫,從外部原件集成代碼也是非常痛苦的。C#中還采用了功能編程的支持,這是以前學(xué)術(shù)語言中的一個非常強大的功能。C#開發(fā)人員中使用的大多數(shù)有用的功能,許多都來自于.NET 框架,它為 C#提供運行環(huán)境、C# 庫以及所有其他.NET 語言
收藏