The task of an object-oriented programmer is to?

What are the general parts of the object-oriented development process? Briefly describe the tasks of each part

ObjectOriented (ObjectOriented, OO) is the current focus of interest in the computer community, and it is the mainstream of software development methods in the 1990s. Object-oriented concepts and applications have gone beyond programming and software development, extending to a wide range. Such as database systems, interactive interfaces, application architecture, application platforms, distributed systems, network management structures, CAD technology, artificial intelligence and other fields.

When it comes to object orientation, there are a lot of articles on the subject. However, very few explicitly give a definition of an object or state a definition of an object – at least none that I’ve found yet. Originally, “object-oriented” was used to refer to the use of encapsulation, inheritance, abstraction, and other design methods in program design. However, it is clear that this definition is no longer appropriate. Object-oriented thinking has been involved in all aspects of software development. For example, object-oriented analysis (OOA, ObjectOrientedAnalysis), object-oriented design (OOD, ObjectOrientedDesign), as well as we often say object-oriented programming implementation (OOP, ObjectOrientedProgramming). Many of the articles about object-oriented development are just about the problems to pay attention to in the object-oriented development or the better design methods used. The only way to maximize the benefits of reading these articles is to truly understand what an object is and what object-oriented is. This, I’m afraid, can be a blur to beginners and even those who have been working on the subject for years on their concepts.

Object-oriented is the current focus of interest in the computer world, and it is the mainstream of software development methods in the 1990s. Object-oriented concepts and applications have been extended beyond programming and software development to a wide range. Such as database systems, interactive interfaces, application architecture, application platforms, distributed systems, network management structures, CAD technology, artificial intelligence and other fields.

I. Problems of traditional development methods

1. Poor reusability of software

Reusability refers to the nature of the same thing can be reused many times without modification or slight modification. Software reusability is one of the goals of software engineering.

2. Poor software maintainability

Software engineering emphasizes the maintainability of software, stresses the importance of documentation, and stipulates that the final software product should consist of complete and consistent configuration components. In the software development process, always emphasize the software readability, modifiability and testability are important quality indicators of software. Practice has proved that the software developed by traditional methods, maintenance of its fees and costs are still very high, the reason for this is poor modifiability, maintenance difficulties, resulting in poor maintainability.

3. Developed software can not meet the needs of users

The development of large-scale software systems with the traditional structured approach involves a variety of different areas of knowledge, in the development of fuzzy demand or demand for dynamic changes in the system, the developed software system often can not really meet the needs of users.

Software developed with the structured approach, its stability, modifiability and reusability are relatively poor, this is because the essence of the structured approach is functional decomposition, starting from a single processing on behalf of the overall functionality of the target system, from the top down the complexity of the processing is constantly decomposed into sub-processing, so that the decomposition of layer by layer down until only a number of easy to realize the sub-processing function is left, and then use the The corresponding tools are then used to characterize each of the lowest level of processing. Thus, the structured approach constructs the system around the “process” of realizing the processing functions. However, changes in user requirements are mostly function-specific, and therefore disastrous for process-based design. The structure of systems designed in this way is often unstable, and changes in user requirements often result in large changes in the structure of the system, which are costly to implement.

Two, the basic concepts of object-oriented

(1) object.

Objects are anything that people want to study, from the simplest integers to complex airplanes and so on can be regarded as objects, which can not only represent the concrete things, but also represent the abstract rules, plans or events.

(2) The state and behavior of an object.

Objects have states, and an object describes its state in terms of data values.

Objects also have operations, which are used to change the state of the object, an object and its operations are the behavior of the object.

Objects realize the combination of data and operations, so that the data and operations are encapsulated in the unity of the object

(3) Classes.

An abstraction of objects having the same or similar properties is a class. Thus, the abstraction of an object is a class, the concretization of a class is an object, and it can also be said that instances of a class are objects.

Classes have attributes, which are abstractions of the states of objects, and data structures are used to describe the attributes of classes.

Classes have operations, which are abstractions of the behavior of an object, described by the name of the operation and the method that implements that operation.

(4) The structure of a class.

There are a number of classes in the objective world, and these classes have certain structural relationships with each other. There are usually two main structural relations, namely, general – specific structural relations, and whole – part structural relations.

1) The general-specific structure is called the categorical structure, which can also be said to be the “or” relationship, or the “isa” relationship.

â‘¡The whole-part structure is called the assembly structure, and the relationship between them is a “with” relationship, or “hasa” relationship.

(5) Messages and methods.

The structure for communication between objects is called a message. In the operation of objects, when a message is sent to an object, the message contains information that the receiving object goes to perform some operation. Sending a message should include at least a description of the name of the object that receives the message, and the name of the message (i.e., object name, method name) that is sent to that object. Generally there is also a description of the parameters, which can be variable names known to the object that recognizes the message, or global variable names known to all objects.

The implementation of operations in a class is called a method, and a method has a method name, parameters, and a method body. Message passing is shown in Figure 10-1.

What are the knowledge points of the software designer morning exam?

Software designer belongs to the soft exam intermediate qualification exam, software designer exam contains two subjects, the morning exam subject for the basic knowledge, basic knowledge of the subject of the form of the examination for the written test, the examination questions for the objective multiple-choice questions, full of 75 points.

Software exam intermediate software designer morning exam subjects for basic knowledge, the exam time is scheduled for 9:00 a.m. – 11:30 a.m., software designer basic knowledge subjects exam knowledge points are as follows:

1. basic knowledge of computer science;

1.1 number system and its conversion;

binary, octal, decimal and hexadecimal and other commonly used number systems and their interconversions;

1.2 Representation of data in computers;

Number representation (complementary representation, representation of integers and real numbers, precision and overflow);

Non-numerical representations (character and kanji representations, sound representations, image representations);

1.3 Arithmetic and logical operations;

Binary numbers in computers operations;

basic operations of logical algebra;

1.4 other mathematical fundamentals;

common numerical calculations;

permutations and combinations, applications of probability theory, applied statistics (statistical analysis of data);

fundamentals of coding;

fundamentals of propositional logic, predicate logic, formal logic;

Basic methods of operations research;

2. Knowledge of computer systems;

2.1 Fundamentals of computer hardware;

2.1.1 Composition of computer systems, classification of architectures, and their characteristics;

Composition, performance, and basic operating principles of CPUs and memories;

Performance of commonly used I/O devices and communication devices and the basic working principles;

functions, types and characteristics of I/O interfaces;

CISC/RISC, pipelined operation, multiprocessors, parallel processing;

2.1.2 Storage systems;

basic working principles of virtual memory, multilevel storage systems;

RAID types and characteristics;

2.1.3 Reliability and system performance evaluation basics;

Diagnostics and fault tolerance;

System reliability analysis and evaluation;

Methods of computer system performance evaluation;

2.2 Knowledge of computer software;

2.2.1 Knowledge of data structures and algorithms;


Stranded lists;<

queues, stacks;


definition, storage, and basic operations of graphs;

hash tables;

commonly used sorting algorithms, lookup algorithms, numerical computation, string processing, data compression algorithms, recursive;

reparation algorithms, and algorithms related to graphs;

algorithmic description and analysis;

2.2.2 Knowledge of operating systems;

Operating system kernel;

Processor management;

Storage management;

Device management;

File management;

Job management;

Network operating systems and embedded operating systems basics;

operating system configuration;

2.2.3 Knowledge of programming languages and language processors;

Basics and basic working principles of assembly, compilation, and interpretation systems;

Basic components of programming languages (data, arithmetic, control, and transmission), implementation of program calls;


The various types of programming languages, their main features and applicability;

2.2.4 Database knowledge;

Database models (conceptual schema, external schema, internal schema);

Data models, ER diagrams, normalization;

Data manipulation;

Database languages;

Functionality and characteristics of database management systems;

Database control functions;

Basics of data warehouses and distributed databases;

2.3 Knowledge of computer networks;

Network architecture;

Transmission media, transmission technology, transmission methods, transmission control;

Common network equipment and characteristics of various types of communication equipment;

Client- Server structure, Browser-Server structure;

LAN (topology, access control, networking, inter-network interconnection);

Internet and Intranet basics and applications;

Network software;

Network management, network performance analysis;

2.4 Multimedia basics;

Multimedia system basics;

Drawing of simple graphics, image file processing methods;

Audio and video information applications;

Multimedia application development process;

3. Knowledge of system development and operation;

3.1 Software engineering knowledge;

Software Survival Cycle and Software Survival Cycle Models;

Software Development Methods;

Software Development Project Management;

Software Development Tools and Software Development Environments;

3.2 Basic Knowledge of System Analysis;

Major Steps in System Analysis;

Institutionalized Analysis Methods;

3.3 System Design Basic knowledge;

Basic tasks of outline design and detailed design;

Basic principles of system design;

System module structure design;

Structured design methods;

Data structure oriented design methods;

Detailed design of the system;

3.4 System implementation basic knowledge;

Basics of system implementation;

Programming methods;

Basic modules of programming;

System testing;

System conversions;

3.5 Fundamentals of system operation and maintenance;

Concepts of system maintainability;

Types of system maintenance;

Concepts and types of system evaluation;

3.6 Software quality management fundamentals;

Software quality characteristics (ISO/IEC 9126 software quality model);

Software quality assurance;

Concepts and metrics of software complexity (McCabe metrics);

Software reviews (design quality reviews, Program Quality Review);

Software Fault Tolerance Techniques;

3.7 Fundamentals of Software Process Improvement;

Software Capability Maturity Model (CMM);

Basic concepts of Unified Process (UP) and Extreme Programming (XP);

4. p>

Knowledge of object-oriented analysis and design;

Knowledge of analytical patterns and design patterns;

Knowledge of object-oriented programming;

Basic knowledge of object-oriented databases and distributed objects;

5. Knowledge of information security;

Fundamentals of information system security;

Information system security management;<

Measures to safeguard integrity and availability;

Basic knowledge of encryption and decryption mechanisms;

Risk management (risk analysis, types of risks, anti-risk measures, and internal control);

Basic knowledge of laws and regulations related to computer security;

6. Basics of standardization, informatization, and intellectual property rights;

6.1 Basic knowledge of standardization;

Standardization awareness, standardization organization, content, classification, code and numbering provisions of the standard, standard;

Standard formulation process;

International standards, standards, industry standards, enterprise standards;

Code standards, file format standards, security standards, Internet-related standards, software development specifications and;

Document standards. /p>

documentation standards, component-based software standards;

6.2 Basic knowledge of informatization;

global informatization trends, informatization strategies, enterprise informatization strategies and tactics;

Internet-related laws and regulations;

Privacy rules for personal information protection;

distance education, e-commerce, e-government and other Basic knowledge;

Basic knowledge of enterprise information resource management;

6.3 Basic knowledge of intellectual property rights;

Laws and regulations related to the protection of intellectual property rights;

7. English for computer professionals;

Possessing the English reading level required for engineers;

Understanding English terminology in this field.

Warm reminder: Due to the continuous changes and adjustments in examination policies and contents, the above information provided by Hunt Exam is for reference only!

Below the free review material content introduction: from zero base against the attack, the system architecture commonly examined concepts summarized

Format: ZIP Size: 23387.98KB2023 first half of the system integration project management engineer preparation knowledge point collection collection

Format: DO Size: 7158.83KB

Qualification exam have questions, do not know How to summarize the content of the examination points, not clear about the local policy of the application examination, click the bottom of the consulting hunter examination network, free of charge to receive review materials

Kneeling for C/C++/ MFC course design?

Stuff. I know how to use MFC to write applications with visual interfaces. Using the opportunity to design this simple calculator, I strengthened my knowledge of C++, reviewed my previous knowledge, and improved my logical thinking skills quite a bit. Thus, I got another deeper understanding of MicrosoftVisualC++6.0! In this course design, I also know some of the more important steps of program development, such as requirements analysis, overall design, database design (including conceptual design, logical design, physical design), program module design (including functional requirements, user interface design, program code design and analysis, running results), system instructions, etc.. In a word, I have gained a lot through this course design, and I believe it will bring great benefits for my future study and work. The most important thing is that it stimulates my interest and enthusiasm in programming, and makes me change from a person who only knows the theory to a person who can do some small programs, and makes me love programming more. Overall evaluation of this course design, I think there is a lot of harvest, as said above, through the course design, both review the old knowledge, and learned some new knowledge; design to enhance our ability to use the knowledge we have learned to solve specific problems, and further cultivate our independent thinking and problem-solving skills. Especially, we learned how to debug the program in VisualC++ integrated development environment. Of course, the careful guidance of teachers and the help of classmates can not be ignored, I would like to thank all the tutors for their care and help in this course design, and sincerely thank them for their encouragement and teaching, they gave me some hints when I was lost, and inspired me to program; and I would also like to thank my classmates for their help in the design of the course, even though it is not a teamwork, they also gave me a good opportunity to work together, but they also gave me a good opportunity to work together, and I would like to thank them for their help. Although this is not a teamwork, but they also gave me a lot of tips and help, it is they make me have the confidence to insist on doing down, I would like to thank them!

This is my own writing, take out the dedication, ha. I’m sorry.

The following is the previous one,

By completing the task of object-oriented programming, so that I am proficient and mastered this semester learned about visualc++ in some of the main knowledge and application points, such as the definition of the class, the implementation of the class, the definition of the object, the inheritance of the class and so on. You can learn what you have learned, all used, not to their own knowledge due to the lack of experience in the process available, and give up interest in it.

Object-Oriented Programming as a software design course, has a strong practical, so that I have strengthened the ability to flexibly apply theoretical knowledge and object-oriented programming skills.

This time, the design and creation of the application program experienced heavy difficulties and problems that would never normally be found in a classroom or on an exam. These problems, in turn, are deeper areas of knowledge and applications that are seldom mentioned in textbooks. These problems are not something that we can easily solve by just relying on textbooks. Therefore, it exercises our ability to face difficult problems, to think by ourselves, to explore by ourselves, to look up information to find out the problems and solve them by ourselves in an arbitrary manner.

Of course, the completion of this task also reflects the spirit of solidarity among students. Encountered all kinds of difficult to solve the problem, we will treat it as a common problem, together to discuss together, together to play their own learning and knowledge, engaged in helping each other and solve the problem.

“Practice is the only criterion for testing truth”. Without practice, one will not discover and deeply appreciate where it really is. Only through the test of the truth, in one’s own heart, will recognize its authenticity. The completion of object-oriented programming, so that we know the importance of the truth, the combination of theory and practice, in order to truly grasp the knowledge learned and mastered.

The possession of theory does not represent our strength and ability, all events and their success are a combination of theory and practice. In short, the knowledge we learn and master can only be truly understood and mastered through practical application, and can be better applied.

Not giving points is too disrespectful brother. Ha! Happy day and happy new year ah!!!!

What is the goal of object-oriented design

There is no goal, it is just a product of a certain degree of program development, and something that has inevitably arisen in the evolution of programs to date.

From the earliest assembly, to the back of the emergence of the C language, everyone from the process of programming to start coding, simple microcontroller code is also still using the process of coding, with the emergence of commercial software, the program was originally complex and large, so the emergence of object-oriented, programmers can be based on the easier to understand the way the program’s cuts, so that more than one can develop a set of programs at the same time, at the same time According to the demand for scalability and program maintainability design, so I personally feel that object-oriented also has no goal, just the program complexity of the natural emergence of some of the solution to each stage of the development of the problem of ideas or concepts