Visualisation of concurrent and objectoriented programs
DEIF A S 高级图形界面数据表,AGI 400系列说明书

Advanced Graphical Interface, AGI 400 series●For dedicated HMI solutions●Advanced programming software●Designed for marine and harshenvironments●Available in 7", 10", 15" and 21"AGI 400 series data sheet 4921240564 UK1. General information1.1. Application and advantages (3)1.1.1. Application (3)1.1.2. Advantages (3)2. Functionallity2.1. Funtionallity (5)2.1.1. Remote access (5)2.1.2. Software functionality (6)2.1.3. Maximum resources (8)2.1.4. Communication protocols (9)3. Technical information3.1. Specifications (11)3.1.1. Product data and dimensions, AGI 407 (11)3.1.2. Product data and dimensions, AGI 410 (14)3.1.3. Product data and dimensions, AGI 415 (17)3.1.4. Product data and dimensions, AGI 421 (20)3.1.5. Connections (22)4. Ordering information4.1. Order specifications and disclaimer (23)4.1.1. Order specifications (23)4.1.2. Disclaimer (23)1. General information1.1 Application and advantages1.1.1 ApplicationA comprehensive HMI solution, DEIF’s AGI 400 series connects to all DEIF Multi-line controllers, as well as third party electronics, via standard defined communication protocols, featuring functionalities which eliminate the need for other instruments, thus saving you both space and wiring.The AGI 400 series is intended for visualisation and active control in multiple applications managed on board maritime vessels or platforms, where it provides full graphical overviews and user-friendly touch screen con-trol with a quality display that is easily readable even at sharp angles. Monitor or control multiple setups si-multaneously, or share data via Ethernet connections, effectively enabling the DEIF HMI to be used as a small SCADA system. AGI 400 supports multiple users levels and LAN clients, ensuring user control in sever-al levels.Application examples●Energy monitoring system - SEMSMonitor, track and store your energy production and consumption to optimise and implement the energy awareness on board the vessel.●Alarm handling and monitoringUse the AGI to monitor alarms. View historical alarm data and acknowledge active alarms.●Power management systems - control and supervisionWhen you have multiple gensets, bus tie breakers, etc., and you need to have the overall overview, the AGI can communicate with the controllers to create this overview and let you manage the PMS from one point.●Graphical interface - mechanical and electrical systemsInterface with mechanical and electrical equipment to have a system overview locally. Trend measured values to monitor operation performance or when making fault findings on the equipment.All systems mentioned above must comply with the guidelines of the classification societies.1.1.2 AdvantagesHardwareAGI 407, AGI 410:●TFT colour display, LED backlight 500cd/m2●24bit colour resolution●Capacitive touch screen, supporting multi-touch widgets● 3 Ethernet ports with individual MAC address with bridge option● 2 USB2.0 host ports●RS-232, RS-422 and RS-485 serial communication●SD card slot●Optional plug-in module for CANopen/J1939 communication●Slim design. Mounting depth less than 60 mm●Display backlight dimmable to 0 %●LED backlight timeout option, for extensive LED durabilityAGI 415, AGI 421:●TFT colour display, LED backlight 300cd/m2●24bit colour resolution●Capacitive touch screen, supporting multi-touch widgets● 3 Ethernet ports with individual MAC address with bridge option● 2 USB2.0 host ports●RS232, RS 422 and RS485 serial communication●SD card slot●Optional plug-in module for CANopen/J1939 communication●Slim design. Mounting depth less than 50 mm●Display backlight dimmable to 0 %●LED backlight timeout option, for extensive LED durabilitySoftwareThe AGI 400 series uses Linux RT operating system, and the platform has been designed to run the DEIF AGI software.●Full vector graphic support. Native support of SVG graphic objects. Transparency and alpha blending.●Full object dynamics: Control visibility and transparency, move, resize and rotate any object on screen.Change properties of basic and complex objects.●TrueType fonts.●Multi-language/alphabets and applications. Easily create and manage your applications in multiple lan-guages to meet global requirements.●AGI Creator supports easy third party translations and help to reduce development and maintenancecosts of the application, with its build in language tools.●Data display in numerical, text, bar graph, analogue gauges and graphic image formats.●Rich set of state-of-the-art HMI features: Data acquisition, alarm handling, scheduler and timed actions(daily and weekly schedulers, exception dates), recipes, users and passwords, email and RSS feeds.●Multiple drivers communication capability, see separate section in this document.●Mobile and tablet compatible WEB server embedded, for easy mobile platform implementation.●Remote monitoring and control. Client-server functionality. Mobile clients supported.●Offline simulation with AGI Creator.●Supports powerful Codesys PLC runtime for automating HMI applications.●Rich gallery of industrial standardiser symbols and objects.●Embedded own user gallery workspace for fast application development.●PDF reader for on-screen user guide reading.Application development support●DEIF specific application templates, free of charge.●DEIF importable communication setup files, compatible with a DEIF controller.●DEIF graphics included, covering over 4000 DEIF specific graphical elements.●DEIF templates include a fully customisable menu structure.●AGI system setting, included in templates.2. Functionallity2.1 Funtionallity2.1.1 Remote accessAGI 400 series offer the following option to connect and control remotely:Remote options availableAGI Client - an MS Windows parallel client YES (max.4)AGI WEB - tablet and smartphone access YES, via configurable AGI web server VNC server YESEmail client with SSL YESFTP server YES2.1.2 Software functionalityThe below table shows the software functionallityUser functionalityScreen image orientation Landscape 0°, portrait 90°, landscape 180° and por-trait 270°Multiple protocols YES, Please see protocol sectionData transfer between protocols YESRTC with NTP synchronisation YES, with internal maintenance free battery backup Time scheduled tasks YESLED back light off with custom timeout YESScreen saver with custom timeout YESLive trending curves YESAlarm handling YESTrend data logging YESHistorical data logging and export to SD card/USB YES (export trending)Logging events (audit trails)YESRetentive memory YESRecipe handling YESInternal buzzer YESIndustrial widgets YESCustom widget library YESPrinter and PDF reports YESPDF reader YESUser/access management YES, local and client/remoteMulti-touch support YES - swipe and pinch zoomIP camera support YES - monitor and controlHTML 5 webbrowser support YES - based on web kitTrueType fonts YES, support multiple alphabetsSVG images YESMulti-language YESObject dynamics YES, visibility, opacity, position, size, rotation JavaScripting YESCODESYS runtime add on YES, V3.5 (license needed to enable)AGI Creator - application designer softwareUpdate project via USB memory YESProgramming and updating over LAN YESPassword protection of projects YESUpload from AGI and re-work project YESSimulation online/offline YESImport/Export TAG list YESImport/Export alarm list YESConverting existing application to newest version YESLanguage list YES - import/export to spreadsheet file for transla-tion2.1.3 Maximum resourcesMaximum resources availableNumber of pages1000Number of basic widgets/objects2000 x pageNumber of tags10000Number of dialogue pages50 (max 5 can be opened simultaneously) Number of object of any types in one page2000Number of recipes32Number of parameter set for a recipe1000Number of elements for a recipe1000Number of user groups50Number of users50Number of concurrent clients4Number of schedulers30Number of alarms2000Number of template pages50Number of actions programmable per button32Number of trend buffers30Number of curves per trend widget5Number of curves per page10Number of samples per trend buffer/block200000Number of trend buffer samples for a project1200000Number of trend buffer tags200Number of messages in a message field1024Number of languages12Number of events per buffer2048Number of event buffers4Number of maximum data transfers1000JavaScript file size per page16 KbRetentive memory16 KbSize of project on disk60 MbMax. protocols42.1.4 Communication protocolsThe below table shows the supported communication protocols.Protocol Compatible hardware Modbus RTU GenericModbus RTU server GenericModbus TCP GenericModbus TCP server GenericOPC UA client GenericOPC UA server Generic (TAGS and variables)CANopen HMI GE FanucMoeller SAM GPM500 ISaGrafCODESYS V3Codesys V3 DEIF license is required CAN J1939DEIF CANopen module required NMEA 0183GenericEthernet/IP CIP Logix 5000Omron SysmacMicro800Allan Bradley DF1PLC3PLC5/10/12/15/25PLC5/40/40LPLC5/60/60LSLC500 fixed I/O SLC500 Modular I/O Micrologix 1000 Micrologix 1500 Ultra5000Allan Bradley DH 485SLC500 fixed I/OSLC500 Modular I/O Micrologix 1000 Micrologix 1500Allan Bradley ENET PLC 5 vie NET-ENIPLC5/10-25SLC/Micrologix/NET-ENI SLC500 Modular I/OBeckhoff ADS BC/BX PC/CXMitsubishi FX ETH FX1NFX2N FX3G FX3UMitsubishi FX SER FXFX0/FX0SFX0NFX1N FX1S FX2N FX3G FX3UMitsubishi Q/L ETH Q00J/Q00/Q01Q02/Q02H/Q06H/Q12H/Q25HQnUL02CPU L26CPU-BTQ170M-PLC CPU Q170M-Motion CPUOmron FINS ETH CJx/CS1x/CP1x Omron FINS SER CJx/CS1x/CP1xProtocol Compatible hardwareSiemens Simatic S7 ETH S7-300S7-313/314/315S7-412S7-413S7-414S7-416S7-315-2 DPS7-318-2 DP S7-417S7-319-3PN DPS7-1200 CPU 1211 / 1212 S7-1200 CPU 1214 / 1215 S7-1500 CPU 15xx LOGO! 0BA7ET200S IM151Siemens Simatic S7 MPI S7-300S7-313/314/315S7-412S7-413S7-414S7-416S7-315-2 DPS7-318-2 DPS7-417S7-319-3PN DPSiemens Simatic S7 PPI S7-212S7-214S7-215/216S7-221S7-222S7-224/226 S7-226XM3. Technical information3.1 Specifications3.1.1 Product data and dimensions, AGI 407DisplayType TFTResolution800x480 pixelActive display area7" diagonalAspect ratio H/V16:9Colours24 bit (16 million)Viewing angle (H/V)170/170Backlight LEDBrightness500 Cd/m2 typ.Backlight dimming 0-100%YesBacklight time out Yes, customisableBacklight service time50.000 h or more*System resourcesOperating system Linux RTCPU ARM Cortex-A9 iMX.6 Dual Core 1 GHzRAM 1 GB DDRUser memory 4 GB Flash/64 KB FRAMOperator interfaceTouch screen Projected capacitive, multi-touchInterfaceEthernet 2 pcs. 10/100 Mbit, 1 pcs. 10/100/1000 Mbit USB 2 x USB 2.0 (hosts) - max. 500 mASerial RS-232, RS-485, RS-422, software configurable Expansion slot 2 optional plug-insMemory card SD card slotRatingsPower supply voltage24 V DC (10 to 32 V DC)Current consumption0.7 A at 24 V DC (max.)Fuse Automatic, self-resettableWeight Approximately 1.3 kg (un-boxed)Battery Rechargeable Lithium battery, not user-replaceableEnvironmental conditionsOperating temperature-20° C to +55 °C (vertical installation)Storage temperature-30° C to +70 °COperating and storage humidity95 % RH Condensation IEC 60068-2-30 Db (Cyclic)Vibration IEC 60068-2-6 and IACS UR E10.2-13.2 Hz ±1 mm13.2-100 Hz 0.7 gShock IEC 60068-2-27, test Ea50 g 11 msProtection class IP66 (front)IP20 (rear)According IEC/EN 60529DimensionsFaceplate A x B187x147 mm (7.36x5.79“)Cutout C x D176x136 mm (6.93x5.35“)Depth E + F47+8 mm (1.85+0.31”)ApprovalsCE EN 61000-6-4 Emission, installation in industrial environmentsEN 61000-6-2 Immunity, installation in industrial environmentsEN 60945-2002 Maritime navigation and radio communication equipmentand systemsDNV GL IEC 60092-504 Electrical Installations in Ships - Part 504: Special fea-tures - Control and Instrumentation (IACS UR E10 Bridge and deck zone)IEC 60533 Electrical and electronic installations in ships – electromag-netic compatibility (IACS UR E10 Bridge and deck zone)DNV GL Type Approval Certificate (Pending)UL UL508 Listed (Pending)Haz. Loc. Class I, Division 2, Groups A, B, C and D (Pending)* Time of continuous operation until the brightness of the backlight reaches 50 % of the rated value when the surrounding air temperature is 25 °C. Extended use in environments where the surrounding air temperature is 40 °C or higher may degrade backlight quality/reliability/durability.Dimensions3.1.2 Product data and dimensions, AGI 410DisplayType TFTResolution1280x800 pixelActive display area10.1" diagonalColours24 bit (16 million)Aspect ratio H/V16:9Viewing angle (H/V)170/170Backlight LEDBrightness500 Cd/m2 typ.Backlight dimming 0-100 %YesBacklight time out Yes, customisableBacklight service time50.000 h or more*System resourcesOperating system Linux RTCPU ARM Cortex-A9 iMX.6 Dual Core 1 GHzRAM 1 GB DDRUser memory 4 GB Flash/64 KB FRAMOperator interfaceTouch screen Projected capacitive, multi-touchInterfaceEthernet 2 pcs. 10/100 Mbit, 1 pcs. 10/100/1000 MbitUSB 2 x USB 2.0 (hosts) - max. 500 mASerial RS-232, RS-485, RS-422, software configurable Expansion slot 2 optional plug-insMemory card SD card slotRatingsPower supply voltage24 V DC (10 to 32 V DC)Current consumption 1 A at 24 V DC (max.)Fuse Automatic, self-resettableWeight Approximately 1.7 kg (un-boxed)Battery Rechargeable Lithium battery, not user-replaceableEnvironmental conditionsOperating temperature-20° C to +55 °C (vertical installation)Storage temperature-30° C to +70 °C95 % RH Condensation IEC 60068-2-30 Db (Cyclic)Operating and storage humidi-tyVibration IEC 60068-2-6 and IACS UR E102-13.2 Hz ±1 mm13.2-100 Hz 0.7 gShock IEC 60068-2-27, test Ea50 g 11 msProtection class IP66 (front)IP20 (rear)According IEC/EN 60529DimensionsFaceplate A x B282x197 mm (11.10x7.80“)Cutout C x D271x186 mm (10.67x7.32“)Depth E + F56+8 mm (2.20+0.33”)ApprovalsCE EN 61000-6-4 Emission, installation in industrial environmentsEN 61000-6-2 Immunity, installation in industrial environmentsEN 60945-2002 Maritime navigation and radio communication equipmentand systemsDNV GL IEC 60092-504 Electrical Installations in Ships - Part 504: Special fea-tures - Control and Instrumentation (IACS UR E10 Bridge and deck zone)IEC 60533 Electrical and electronic installations in ships – electromagnet-ic compatibility (IACS UR E10 Bridge and deck zone)DNV GL Type Approval Certificate (Pending)UL UL508 Listed (Pending)Haz. Loc. Class I, Division 2, Groups A, B, C and D (Pending)* Time of continuous operation until the brightness of the backlight reaches 50 % of the rated value when the surrounding air temperature is 25 °C. Extended use in environments where the surrounding air temperature is 40 °C or higher may degrade backlight quality/reliability/durability.Dimensions3.1.3 Product data and dimensions, AGI 415DisplayType TFTResolution1366 x 768 pixelActive display area15.6" diagonalAspect ratio H/V16:9Colours24 bit (16 million)Viewing angle (H/V)160/160Backlight LEDBrightness300 Cd/m2 typ.Backlight dimming 0-100%YesBacklight time out Yes, customisableBacklight service time50.000 h or more*System resourcesOperating system Linux RTCPU ARM Cortex-A9 iMX.6 Quad Core 1 GHzRAM 2 GB DDRUser memory8 GB Flash/64 KB FRAMOperator interfaceTouch screen Projected capacitive, multi-touchInterfaceEthernet 2 pcs. 10/100 Mbit, 1 pcs. 10/100/1000 MbitUSB 2 x USB 2.0 (hosts) - max. 500 mASerial RS-232, RS-485, RS-422, software configurable Expansion slot 2 optional plug-insMemory card SD card slotRatingsPower supply voltage24 V DC (10 to 32 V DC)Current consumption 1.2 A at 24 V DC (max.)Fuse Automatic, self-resettableWeight Approximately 4.1 kg (un-boxed)Battery Rechargeable Lithium battery, not user-replaceableEnvironmental conditionsOperating temperature-20° C to +55 °C (vertical installation)Storage temperature-30° C to +70 °COperating and storage humidity95 % RH Condensation IEC 60068-2-30 Db (Cyclic)Vibration IEC 60068-2-6 and IACS UR E102-13.2 Hz ±1 mm13.2-100 Hz 0.7 gShock IEC 60068-2-27, test Ea50 g 11 msProtection class IP66 (front)IP20 (rear)According IEC/EN 60529DimensionsFaceplate A x B422x267 mm (16.6x10.5“)Cutout C x D411x256 mm (16.18x10“)Depth E + F56+8 mm (2.20+0.33”)ApprovalsCE EN 61000-6-4 Emission, installation in industrial environmentsEN 61000-6-2 Immunity, installation in industrial environmentsEN 60945-2002 Maritime navigation and radio communication equipmentand systemsDNV GL IEC 60092-504 Electrical Installations in Ships - Part 504: Special fea-tures - Control and Instrumentation (IACS UR E10 Bridge and deck zone)IEC 60533 Electrical and electronic installations in ships – electromag-netic compatibility (IACS UR E10 Bridge and deck zone)DNV GL Type Approval Certificate (Pending)UL UL508 Listed (Pending)Haz. Loc. Class I, Division 2, Groups A, B, C and D (Pending)* Time of continuous operation until the brightness of the backlight reaches 50 % of the rated value when the surrounding air temperature is 25 °C. Extended use in environments where the surrounding air temperature is 40 °C or higher may degrade backlight quality/reliability/durability.Dimensions3.1.4 Product data and dimensions, AGI 421DisplayType TFTResolution1920x1080 pixelActive display area21,5" diagonalAspect ratio H/V16:9Colours24 bit (16 million)Viewing angle (H/V)189/189Backlight LEDBrightness300 Cd/m2 typ.Backlight dimming 0-100%YesBacklight time out Yes, customisableBacklight service time50.000 h or more*System resourcesOperating system Linux RTCPU ARM Cortex-A9 iMX.6 Quad Core 1 GHzRAM 2 GB DDRUser memory8 GB Flash/64 KB FRAMOperator interfaceTouch screen Projected capacitive, multi-touchInterfaceEthernet 2 pcs. 10/100 Mbit, 1 pcs. 10/100/1000 MbitUSB 2 x USB 2.0 (hosts) - max. 500 mASerial RS-232, RS-485, RS-422, software configurable Expansion slot 2 optional plug-insMemory card SD card slotRatingsPower supply voltage24 V DC (10 to 32 V DC)Current consumption 1.7 A at 24 V DC (max.)Fuse Automatic, self-resettableWeight Approximately 6.1 kg (un-boxed)Battery Rechargeable Lithium battery, not user-replaceableAGI 400 series data sheet 4921240564 UK Technical informationEnvironmental conditionsOperating temperature-20° C to +55 °C (vertical installation)Storage temperature-30° C to +70 °COperating and storage humidity95 % RH Condensation IEC 60068-2-30 Db (Cyclic)Vibration IEC 60068-2-6 and IACS UR E102-13.2 Hz ±1 mm13.2-100 Hz 0.7 gShock IEC 60068-2-27, test Ea50 g 11 msProtection class IP66 (front)IP20 (rear)According IEC/EN 60529DimensionsFaceplate A x B552x347 mm (21.7x13.66“)Cutout C x D541x336 mm (21.3x13.23“)Depth E + F56+8 mm (2.20+0.33”)ApprovalsCE EN 61000-6-4 Emission, installation in industrial environmentsEN 61000-6-2 Immunity, installation in industrial environmentsEN 60945-2002 Maritime navigation and radio communication equipmentand systemsDNV GL IEC 60092-504 Electrical Installations in Ships - Part 504: Special fea-tures - Control and Instrumentation (IACS UR E10 Bridge and deck zone)IEC 60533 Electrical and electronic installations in ships – electromag-netic compatibility (IACS UR E10 Bridge and deck zone)DNV GL Type Approval Certificate (Pending)UL UL508 Listed (Pending)Haz. Loc. Class I, Division 2, Groups A, B, C and D (Pending)* Time of continuous operation until the brightness of the backlight reaches 50 % of the rated value when the surrounding air temperature is 25 °C. Extended use in environments where the surrounding air temperature is 40 °C or higher may degrade backlight quality/reliability/durability.3.1.5 ConnectionsBelow you will find the connection location, valid for all screen sizes.AGI 400 series data sheet 4921240564 UK Ordering information4. Ordering information4.1 Order specifications and disclaimer4.1.1 Order specificationsTouch displayItem no.Type2912460020.01AGI 4072912460020.02AGI 4102912460020.03AGI 4152912460020.04AGI 4212912460010.08AGI PC Runtime, MS Windows® Runtime licenseAccessories and software licencesItem no.Type2912990120.01EXM CAN CANopen extension module2912990120.02AGI Creator licence (includes 10 activations)2912990120.05Codesys PLC runtime activation license2912990120.08Table stand small, for 7" and 10" (set of 5 pcs.)2912990120.09Table stand large, for 15" and 21" (set of 2 pcs)4.1.2 DisclaimerDEIF A/S reserves the right to change any of the contents of this document without prior notice.The English version of this document always contains the most recent and up-to-date information about the product. DEIF does not take responsibility for the accuracy of translations, and translations might not be up-dated at the same time as the English document. If there is a discrepancy, the English version prevails.。
Unit1ArtUsefulwordsandExpressions2课件高中英语人教版选择性

2.如果你能很容易地记住图片、图表和视频中的信息, 你可能是一个视觉学习者。 If you easily remember information from pictures, charts and videos, you are likely a visual learner.
18.guarantee : vt. 保证; 确保; 肯定…必然发 生 n. 保证; 保修 单; 担保物
guarantee sb sth = guarantee sth to sb 向某人保证某事 guarantee to do sth 保证做某事 guarantee sb/sth against/from.. 保证...不受/免遭... give sb a guarantee that... 向某人保证... under guarantee 在保修期内 翻译:1.他们保证在一周内完成这项工作。 They guarantee to finish the work within a week. 2.我们不能保证我们的航班永远不会延误。 We cannot guarantee (that) our flights will never be delayed. 3.努力工作是成功的保证。 Hard work is the guarantee of success. 4.我的表还在保修期内,所以他们会免费修理。
humbly adv. 谦逊地;恭顺地 humbleness n. 谦逊;卑贱 critical adj.批评的;关键的;爱挑刺的 critically adv.批判地;严重地 critic n.批评家;评论家 criticise sb. for (doing) sth. 因(做)某事批评某人 receive/take (accept) criticism: 受到/接受批评 翻译:1.她喜欢在背后批评别人。 She likes to criticise other people behind their backs. 2.日本的决定招致了很多批评。
visualisation 翻译

visualisation 翻译基本解释●visualisation:可视化,形象化●音标:/ˌvɪʒuəlaɪˈzeɪʃən/●词性:名词(n)变化形式●复数形式:visualisations具体用法●名词(n):o意思:将数据或信息转化为视觉图像的过程,以便更容易理解和分析。
o同义词:illustration, depiction, representation, portrayal, renderingo反义词:obfuscation, concealment, obscurity, ambiguity, confusiono例句:●The visualisation of the data helped the team to identifytrends that were not immediately obvious from the rawnumbers. (数据的可视化帮助团队识别出从原始数字中不易察觉的趋势。
)●By using visualisation techniques, the scientist was able topresent complex information in a way that was accessible to the general public. (通过使用可视化技术,科学家能够以一种大众易于理解的方式呈现复杂信息。
)●The visualisation of the architectural design allowed theclients to see what the finished building would look like. (建筑设计的可视化让客户能够看到完工后的建筑样子。
)●In the meeting, the manager used a visualisation to explainthe company's growth strategy for the next five years. (在会议上,经理使用可视化来解释公司未来五年的增长战略。
Unit,24年小学六年级上册第6次英语第四单元期中试卷

Unit,24年小学六年级上册英语第四单元期中试卷考试时间:90分钟(总分:110)B卷一、综合题(共计100题共100分)1. 听力题:A chemical that promotes combustion is called an ______.2. 选择题:What do you call the part of the day when the sun rises?A. MorningB. EveningC. AfternoonD. Night3. 填空题:I want to learn how to ________ (骑自行车).4. 选择题:What is the opposite of fast?A. QuickB. SlowC. SpeedyD. Rapid5. 选择题:What is the name of the famous ancient city in Egypt?A. CairoB. AlexandriaC. ThebesD. All of the above6. 填空题:The ________ (海岸线) is long and sandy.7. 选择题:What do you call the process of a seed growing into a plant?A. GerminationB. FertilizationC. PollinationD. Photosynthesis答案: A8. 选择题:What is the largest planet in our solar system?A. EarthB. MarsC. JupiterD. Venus9. 听力题:A _____ is a small celestial body that orbits the sun.10. 选择题:Which animal says "meow"?A. DogB. CatC. CowD. Sheep11. 听力题:The baby is _____ on the floor. (crawling)12. 填空题:My sister has a __________ (可爱的) smile.13. 听力题:I have a ___ (project/test) next week.14. 听力题:The pizza is ___ (delicious/yummy).15. 填空题:The _____ (根) helps to anchor the plant in the soil.16. 填空题:The dog barks _______ (很大声).17. 选择题:What do we call the act of telling someone to be quiet?A. SilenceB. HushC. ShhD. Quiet答案:B18. 填空题:__________ (表面张力) affects how liquids behave in different environments.19. 填空题:The _______ (The New Deal) introduced various programs to combat economic hardship.20. 听力题:An object that spins will continue to ______ (spin) unless acted upon by a force.21. 填空题:My aunt works as a __________ (护士) in the clinic.22. 填空题:The ancient Romans utilized ________ to enhance their architecture.23. 选择题:Which fruit is yellow?A. AppleB. BananaC. CherryD. Grape答案: B24. 选择题:What is the capital city of Samoa?A. ApiaB. Pago PagoC. MulifanuaD. Lalomanu25. 选择题:What do we call the main character in a story?A. AntagonistB. ProtagonistC. Supporting characterD. Minor character答案:B26. 选择题:What do you call a person who makes movies?A. DirectorB. ProducerC. ActorD. Filmmaker27. 填空题:My favorite holiday is ________ (万圣节) for the costumes.28. 填空题:I enjoy doing ______ (实验) in science class. It helps me learn through hands-on activities.29. 填空题:My dog has a very ______ (友好的) personality.30. 选择题:What do you call the act of doing something useful for someone else?A. HelpingB. AssistingC. ServingD. Supporting答案: A31. 选择题:How many months are there in a year?A. 10B. 12C. 11D. 932. 填空题:Brazil is famous for its _____ (47) during Carnival.33. 选择题:What is the opposite of "love"?A. HateB. LikeC. CareD. Enjoy34. 填空题:The ________ (农业实践改进) ensures sustainability.35. 听力题:The antelope is quick and agile in the ____.What do we call a person who catches fish?A. FishermanB. HunterC. FarmerD. Forager37. 选择题:What is the name of the famous mountain range in South America?A. RockiesB. AndesC. HimalayasD. Alps答案:B38. 填空题:The _____ (大自然) provides many resources.39. 听力题:A base turns red litmus paper ______.40. 选择题:Which animal is known for its ability to change colors?A. ChameleonB. FrogC. SnakeD. Fish答案: A41. 填空题:I love to ______ (与朋友分享) my interests.42. 选择题:What is the capital city of Angola?A. LuandaB. BenguelaC. HuamboD. Lubango43. 听力题:Chemical kinetics studies the rates of ______ reactions.44. 听力题:The process of ______ occurs when minerals crystallize.What do you call a small, flying insect that makes honey?A. BeeB. FlyC. MosquitoD. Ant答案:A46. 听力题:The process of changing from a gas to a liquid is called _______.47. 选择题:What is the largest mammal in the world?A. ElephantB. Blue WhaleC. GiraffeD. Hippo答案:B48. 听力题:The __________ is the process of a liquid turning into a solid.49. 选择题:What do we call the soft tissue inside bones?A. CartilageB. MarrowC. TendonD. Ligament答案:B50. 听力题:The chemical formula for brassylic acid is ______.51. 填空题:The __________ is known for its ancient temples and pyramids. (埃及)52. 填空题:A _______ (海马) swims in the sea.53. 听力题:The ____ is a small insect that can be found in many gardens.54. 听力题:The sandwiches are ___ (fresh/old).What is the term for the amount of space an object occupies?A. MassB. VolumeC. WeightD. Density答案:B56. 填空题:The ________ (地壳) is constantly changing.57. 填空题:I hope to make a positive impact on my _______ (社区). Every little effort counts.58. 听力题:A _______ is a solution that cannot dissolve any more solute.59. 选择题:What is the name of the famous American holiday celebrated on the fourth Thursday in November?A. ThanksgivingB. ChristmasC. New Year'sD. Independence Day答案:A60. 填空题:A _____ (盆栽) can add charm to any room.61. 填空题:In PE class, we play many sports like ________ (篮球) and ________ (排球). It helps us stay ________ (健康).62. 填空题:I enjoy going to the ______ (博物馆) to learn about science and history.63. 选择题:What do we call the time it takes for the Earth to rotate once on its axis?A. YearB. MonthC. DayD. Hour答案:C. DayWhich animal is known for its long neck?A. ElephantB. GiraffeC. HorseD. Dog答案:B65. 听力题:The cat likes to _____ in the sun. (nap)66. 填空题:The ______ (植物的医用特性) are explored in research.67. 选择题:What is the opposite of "happy"?A. JoyfulB. SadC. ExcitedD. Angry答案:B68. 选择题:What is 20 15?A. 4B. 5C. 6D. 769. 听力题:The teacher is very ________.70. 听力题:The process of ______ can lead to the formation of new landforms.71. 选择题:What do you call the middle of the Earth?A. CrustB. MantleC. CoreD. Shell答案: C72. 听力题:The _____ (钱包) is on the table.What is the name of the famous lighthouse in Greece?A. Pharos of AlexandriaB. Cape HatterasC. Eddystone LighthouseD. Portland Head Lighthouse74. 听力题:Turtles have a hard ______ for protection.75. 选择题:Which of these is a popular sport?A. ChessB. FencingC. FootballD. Knitting76. 听力题:They like _____ (to run) in the park.77. 填空题:My friend, ______ (我的朋友), has a pet rabbit.78. 听力题:She has a red ___. (bike)79. 选择题:What do we call a young alligator?A. HatchlingB. PupC. KitD. Chick答案:A. Hatchling80. 填空题:I can ______ (跑) fast.81. 填空题:Playing with toys helps me learn how to ________ (动词) with others. It teaches me important ________ (名词).82. 听力题:A chemical change can result in a change in ______.83. 选择题:What is the term for a plant that grows in dry conditions?A. AquaticB. TerrestrialC. XerophyticD. Epiphytic答案:C84. 选择题:What is the name of the famous ancient city in Peru?A. Machu PicchuB. CuscoC. LimaD. Arequipa答案:A85. 填空题:We have _______ for breakfast.86. 听力题:The girl loves to ________.87. 选择题:What is the name of the famous archaeological site in Italy?A. PompeiiB. HerculaneumC. Ostia AnticaD. All of the above答案: D. All of the above88. 填空题:My favorite _____ (玩具小汽车) is red.89. 填空题:Planting trees can help combat ______ (气候变化).90. 听力题:The Earth's surface is influenced by both climatic and ______ factors.91. 填空题:The _____ (野生)flowers bloom in springtime.92. 选择题:What do you call a solid that has no definite shape?A. LiquidB. GasC. SolidD. Plasma答案:A93. 听力题:I like to ride my ______ (bike) after school.94. 填空题:The _______ (The Treaty of Versailles) ended World War I and imposed penalties on Germany.95. 选择题:What do you call a baby cow?A. CalfB. FoalC. KidD. Lamb答案:A96. 填空题:The country known for its tea ceremonies is ________ (日本).97. 听力题:The __________ can indicate areas at risk of environmental degradation.98. 听力题:The _______ of an object can be changed by adding or removing mass.99. n Wall fell in _____. 填空题:The Berl100. 听力题:An emulsion is a mixture of two liquids that do not _____.。
分辨虚拟和现实英语作文

分辨虚拟和现实英语作文Title: Distinguishing Between the Virtual and the Real。
In today's fast-paced world, the line between thevirtual and the real has become increasingly blurred. With the rise of technology and the prevalence of virtual experiences, it can sometimes be challenging todifferentiate between what is virtual and what is real. In this essay, we will explore the distinctions between thetwo realms and examine how they shape our perceptions and experiences.Firstly, let us define what we mean by the virtual and the real. The virtual refers to anything that exists or occurs in a digital or simulated environment, often created by technology. This includes virtual reality simulations, online interactions, and digital representations ofphysical objects or experiences. On the other hand, thereal encompasses the tangible, physical world that we experience through our senses. It includes our interactionswith other people, our surroundings, and the natural environment.One of the key differences between the virtual and the real lies in the nature of experience. In the virtual realm, experiences are mediated through technology and often lack the sensory richness of real-world experiences. For example, while a virtual reality simulation may provide a visually immersive experience, it cannot replicate the tactile sensations or emotional depth of real-life interactions. In contrast, real-world experiences are characterized by their immediacy and authenticity, engaging all of our senses and emotions in a way that virtual experiences often cannot match.Another important distinction is the level of control and agency we have in each realm. In the virtual world, we often have a greater degree of control over our environment and experiences. We can manipulate digital objects, create new identities, and explore virtual landscapes withrelative freedom. However, this control is ultimatelylimited by the constraints of the digital environment andthe algorithms that govern it. In the real world, our agency is constrained by physical laws, social norms, and the actions of others. While we may have more freedom toact in the real world, we are also subject to itslimitations and uncertainties.Furthermore, the consequences of our actions differ in each realm. In the virtual world, the impact of our actions is often limited to the digital domain, with few real-world consequences. For example, we can engage in virtual combatin a video game without causing harm to ourselves or others. In contrast, actions taken in the real world can have far-reaching effects on ourselves and others, influencing relationships, communities, and the environment. The stakes are higher in the real world, requiring us to consider the ethical and moral implications of our choices more carefully.Despite these differences, it is important to recognize that the virtual and the real are not mutually exclusive categories. In fact, they often intersect and influenceeach other in complex ways. For example, our interactionsin virtual spaces can shape our perceptions and behaviors in the real world, and vice versa. The rise of virtual communication platforms has blurred the boundaries between online and offline social interactions, leading to new forms of identity expression and social connection.In conclusion, while the virtual and the real may seem distinct at first glance, they are intricately intertwined in our modern world. By understanding the differences between them, we can navigate the complexities of digital technology more effectively and make informed choices about how we engage with both realms. Ultimately, it is ourability to critically reflect on our experiences and cultivate a balanced relationship between the virtual and the real that will enable us to thrive in an increasingly digital age.。
包含关系的二元思辨作文

包含关系的二元思辨作文英文回答:In the realm of dialectical arguments, the concept of inclusionary relations presents an intriguing topic for philosophical contemplation. Within the sphere of logic, inclusion, or containment, denotes the relationship wherein one set of elements is entirely contained within another. This hierarchical arrangement raises fundamental questions about the nature of logical entities and the implications of their interconnectedness.Firstly, the inclusionary relation challenges the notion of absolute exclusivity in set theory. Thetraditional understanding of sets posits that each element belongs to a single set, fostering the illusion of distinct and independent entities. However, the concept of inclusion introduces the possibility of overlapping membership, blurring the boundaries between sets and introducing a nuanced understanding of set membership.Secondly, inclusionary relations shed light on the complexities of classification systems. In the process of organizing and categorizing objects, we often encounter situations where an entity simultaneously belongs to multiple classes. For instance, a book may fall under the categories of both "literature" and "adventure novels." This overlap highlights the limitations of rigid taxonomies and underscores the fluidity of conceptual boundaries.Thirdly, the inclusionary relation prompts us to question the nature of logical hierarchy. Traditional set theory assumes a clear-cut hierarchy, with smaller sets nested within larger ones. However, the concept ofinclusion suggests that hierarchical structures can be more intricate, with sets exhibiting multiple levels of containment. This complexity challenges the traditional notion of a linear hierarchy and introduces the possibility of more dynamic and interconnected relationships.In conclusion, the exploration of inclusionaryrelations within dialectical arguments unveils profoundinsights into the nature of logical entities, the complexities of classification systems, and the intricate web of logical interconnectedness. It invites us to abandon simplistic notions of exclusivity and embrace a more nuanced understanding of the relationships that shape our logical world.中文回答:包含关系在二元思辨作文中具有重要意义。
2013年英语专业晨读美文励志篇:ThePowerofImagination
[00:03.45]The Power of Imagination[00:05.07]Imagination is the ability to form a mental image of something [00:10.56]that is not perceived through the senses.[00:12.77]It is the ability of the mind to built mental scenes,[00:16.50]objects or events that do not exist,[00:19.10]are not present or have happened in the past.[00:22.63]Memory is actually a manifestation of imagination.[00:26.49]Everyone possesses some imagination ability.[00:30.33]In some it may be highly developed and[00:33.93]in others it may manifest in a weaker form.[00:36.92]It manifests in various degrees in various people.[00:40.35]It manifests in various forms, one of which is daydreaming. [00:45.54]Though too much idle daydreaming may make one impractical, [00:49.36]some daydreaming, when not being engaged in something [00:53.26]that requires attention, provides some temporary happiness, [00:56.77]calmness and relief from stress.[00:59.51]In your imagination you can travel anywhere in the speed of light [01:03.77]without any obstacles. It can make you feel free,[01:07.58]though temporarily, and only in the mind, from tasks,[01:11.54]difficulties and unpleasant circumstances.[01:14.64]A developed and strong imagination[01:17.60]does not make you a daydreamer and impractical.[01:21.05]On the contrary, it strengthens your creative abilities,[01:25.11]and is a great tool for recreating[01:28.08]and remodeling your world and life.[01:30.62]This is a great power that can change your whole life.[01:33.73]It is used extensively in magic,[01:36.44]creative visualization and affirmations.[01:39.35]It is the creator of circumstances and events.[01:42.75]When you know how to work with it,[01:45.29]you can make your hearts' desires come true.[01:48.28]Imagination has a great role and value in each one's life. [01:52.05]It is much more than just idle daydreaming.[01:55.18]We all use it, whether consciously or unconsciously,[01:58.88]in most of our daily affairs.[02:01.30]We use our imagination whenever we plan a party,[02:05.33]a trip, our work or a meeting.[02:07.24]We use it when we describe an event,[02:10.01]explain how to arrive to a certain street, write,[02:13.67]tell a story or cook a cake.[02:16.11]Imagination is a creative power[02:18.84]that is necessary for inventing an instrument,[02:21.34]designing a dress or a building,[02:23.29]painting a picture or writing a book.[02:26.06]The creative power of imagination has an important role [02:30.44]in the achievement of success in any field.[02:33.20]What we imagine with faith and feelings comes into being. [02:37.16]It is the power beyond creative visualization,[02:40.76]positive thinking and affirmations.[02:43.22]Visualizing an object or a situation,[02:46.78]and repeating often this mental image,[02:49.21]attracts the object or situation into our lives.[02:52.70]This opens for us new, vast and fascinating opportunities. [02:57.86]This means that we should think only in a positive manner [03:01.74]about our desires, otherwise we may create[03:05.51]and attract into our lives, events,[03:07.25]situations and people that we don't really want.[03:10.91]This is actually what most of us do,[03:13.53]because we don't use the power of imagination correctly. [03:17.24]If you do not recognize the importance of[03:20.18]the power of the imagination, and let it run riot,[03:24.21]your life may not be as happy and successful[03:27.50]as you would have wanted it to be.[03:29.70]Lack of understanding of the power of the imagination is[03:33.61]responsible for the suffering, incompetence,[03:36.45]difficulties, failures and unhappiness people experience.[03:41.19]For some reason, most people are inclined to think in a negative way. [03:46.70]They do not expect success. They expect the worst,[03:50.54]and when they fail, they believe that fate is against them.[03:54.33]This attitude can be changed, and then life will improve accordingly. [03:59.49]Understanding how to use your imagination correctly,[04:02.56]and putting this knowledge into practice,[04:05.13]for your own and others' benefit,[04:07.37]will put you on the golden path to success,[04:10.05]satisfaction and happiness.。
语言学chapter4习题
语言学chapter4习题Chapter 4 SyntaxMultiple Choice1. The sentence structure is ________.A. only linearB. only hierarchicalC. complexD. both linear and hierarchical2. A __________ in the embedded clause refers to the introductory word that introduces the embedded clause.A. coordinatorB. particleC. prepositionD. subordinator3. Phrase structure rules have ____ properties.A. recursiveB. grammaticalC. socialD. functional4. The head of the phrase “the city Rome” is __________.A. the cityB. RomeC. cityD. the city Rome5. The phrase “on the shelf” belongs to __________ construction.A. endocentricB. exocentricC. subordinateD. coordinate6. The sentence “They were wanted to r emain quiet and not to expose themselves.” is a __________ sentence.A. simpleB. coordinateC. compoundD. complex7. In the sentence “Mary gave a book to him”, “him” is with a(n) _________ case.A. accusativeB. dativeC. ablativeD. nominative8. The re lation between any two words in “What a nice day!” is known as ___________.A. choice relationB. paradigmatic relationC. vertical relationD. syntagmatic relation9. __________is mostly a category of the noun and pronoun.A. GenderB. TenseC. AspectD. Number10. Paradigmatic relation is known as _______________.A. horizontal relationB. chain relationC. choice relationD. semantic relation11. Which of the following phrases is exocentric?A. a clever girlB. an ugly manC. in timeD. fork and knife12. refers to the relations holding between elements replaceable with each at particular place in structure, or between one element present and the others absent.A. Syntagmatic relationB. Paradigmatic relationC. Co-occurrence relationD. Exocentric relation13. ______ is a grammatical category used for the analysis of word classes displaying such contrasts as masculine:feminine: neuter, animate: inanimate, etc.A. CaseB. GenderC. NumberD. Category14. Syntactically, English is an example of ________ language.A. VSOB. SVOC. SOVD. OSV15. What is the construction of the sentence “The boy smiled”?A. ExocentricB. EndocentricC. CoordinateD. Subordinate16. the relation between elements that form part of the sameform, sequence, construction, etc. e.g between s, p and r in a form such as spring, or between a subject and a verb in constructions such Bill hunts is called .A. syntagmatic relationB. paradigmatic relationC. positional relationD. relation of substitutabilityFill in each blank below with one word which begins with the letter given:1. A __________ sentence consists of a single clause which contains a subject and a predicate and stands alone as its own sentence.2. A __________ is a structurally independent unit that usually comprises a number of words to form a complete statement, question or command.3. A __________ may be a noun or a noun phrase in a sentence that usually precedes the predicate.4. The part of a sentence which comprises a finite verb or a verb phrase and which says something about the subject is grammatically called __________.5. In the complex sentence, the incorporated or subordinate clause is normally called an __________ clause.6. construction usually includes basic sentence, prepositional phrase, predicate (verb + object) construction, and connective (be complement) construction.7. IC is the short form of immediate used in the study of syntax.8. A sentence contains two clauses joined by a linking word, such as "and", "but", "or".Put a T for true or F for false in the brackets in front of eachstatement.1. In a complex sentence, the two clauses hold unequal status, one subordinating the other.2. Constituents that can be substituted for one another without loss of grammaticality belong to the same syntactic category.3. In English syntactic analysis, four phrasal categories are commonly recognized and discussed, namely, noun phrase, verb phrase, infinitive phrase, and auxiliary phrase.4. In English the subject usually precedes the verb and the direct object usually follows the verb.5. A noun phrase must contain a noun, but other elements are optional.6. Syntax is a subfield of linguistics that studies the sentence structure of language, including the combination of morphemes into words.7. In the phrase “in the near future”, the word “future” is head.8. Words like “actor”and “actress” manifest that grammatical gender strictly corresponds to biological gender.9. Paradigmatic relation in syntax is alternatively called horizontal relation.10.“The student” in the sentence “The student liked the linguistic lecture.”, and “The linguistic lecture” in the sentence “The linguistic lecture liked the student.” belong to the same syntactic category.Define the following terms1. Syntax2. IC analysisAnswer the following questions.1.What are endocentric construction and exocentric construction? (武汉大学,2004)2.Distinguish the two possible meanings of “more beautiful flowers” by means of IC analysis. (北京第二外国语大学,2004)3. Suggest a tree diagram of the sentence The little girl ran into the garden. The student wrote a letter yesterday. Examine each of the following sentences and indicate if it is a simple, coordinate, complex or compound complex sentences:(1)Jane did it because she was asked to.(2)The soldiers were warned to remain hidden and not to expose themselves.(3)David was never there, but his brother was. (4)She leads a tranquil life in the country. (5)Unless I hear from her, I won’t leave this town..Draw on your linguistic knowledge of English and paraphrase each of the following sentences in two different ways to show how syntactic rules account for the ambiguity of sentences: (1)After a two-day debate, they finally decided on the helicopter.(2)The little girl saw the big man with the telescope.(3) The shooting of the hunters might be terrible.(4) He saw young men and women present.。
Visor++ A visualisation tool for concurrent object-oriented programs
2 RELATED WORK
There are relatively few examples of the application of program visualisation to the concurrent object-oriented paradigm. One possible reason is that the paradigm is relatively new. Some of these visualisation tools are discussed below. MVD (Monitoring, Visualisation and Debugging) 5] is a set of tools for visualising the execution of C++ 4] programs. C++ itself is a concurrent language, extending C++ with four basic abstractions: coroutines, monitors, coroutine-monitors, and tasks. The visualisation support that MVD provides focuses on these abstractions, to the extent that only these abstractions and their interactions are visualised. Other entities, such as object member function invocations, are not included. C++ programs are visualised by using trace visualisation, which is visualisation based on program execution traces. MVD also supports statistical visualisation, in which statistics of program execution is displayed, such as task activity status, and stack high-water marks. The TAU 2, 13] visualisation tools are part of the pC++ programming language system 1]. pC++ itself is an extension of C++, with several additional constructs to support data parallelism. The TAU tools are implemented as a graphical hypertool, in which it is a composition of several tools, each of which supports unique capabilities. The tools are divided into two categories. The rst category consists of static analysis tools, including fancy for browsing global functions and class methods, cagey for displaying the static program call graph, and classy for displaying the static class hierarchy. The second category comprises dynamic analysis tools, such as racy for displaying usage proles of functions and concurrent object member functions, easy for displaying program events on an X-Y graph, and breezy, a breakpoint-based debugger. Similar to C++, the pC++ system provides the necessary support to instrument and obtain trace information from its programs. The LAMINA program visualisation tool is used to visualise the execution of LAMINA 8] programs. This tool provides a number of views which can be used for performance debugging. The network-operator view displays the processor-network view, along with the load on each processor, and communication among them. Latency and utilisation on each processor are also displayed. Another view, the activity table, displays textually the activities of each concurrent object, such as the number of messages that have been processed, and the average execution time. Another example is the visualisation system for PARC++ 18] programs. Similar to C++ and pC++, this language is derived from C++. It extends C++ with the necessary abstractions to support concurrency, such as thread management, thread communication, and thread synchronisation. PARC++ programs can be visualised by using several tools, thereby providing di erent angles of visualisation. Some important program elements, however, do not seem to be visualised in the views. For example, the tool Visit 18] does not provide views of monitors, and the tool POPAI 18] does not visualise thread executions, while both monitors and threads are important concepts in PARC++. Visualisation in PARC++ does not provide views of static
Teaching constructors A difficult multiple choice
Teaching Constructors:A Difficult MultipleChoiceNoa Ragonis and Mordechai Ben-AriDepartment of Science TeachingWeizmann Institute of ScienceRehovot76100Israelntnoa@wis.weizmann.ac.il,moti.ben-ari@weizmann.ac.il Abstract.We carried out research on teaching OOP to high-school stu-dents;the understanding of constructors turned out to be a major issue.This paper surveys different structures of declarations for constructors,their semantic context and their influence on programming and students’comprehension.We found that the professional style of declaring a con-structor to initialize attributes from parameters is to be preferred eventhough it seems difficult to learn.Other“simpler styles caused seriousmisconceptions.1IntroductionA constructor is a special method which creates an object;executing a con-structor creates an instance of a type(instantiation).Instantiation is a central concept because it parallels creation of an object in the real world,a metaphor that is often used in teaching.Constructors and instantiation are complex con-cepts which are difficult to learn and teach,but they can’t be avoided.A further complication arises in the instantiation of a class that includes attributes of another class.In this paper we focus on students’understanding of different paradigms for constructors,though obviously other aspects such as memory allocation and syn-tactic differences can also influence understanding.This research was conducting using Java,though we believe that the results would be similar for other OOP languages.The different paradigms of constructor declaration will be demon-strated using a simple example,which is built using the main concepts of OOP in a way so as to avoid misconceptions identified in[1].Then,we describe their semantic context,their influence on programming and students’comprehension. Finally,we give our recommendations for teaching.2Related WorkCorradi and Leonardi[2]discuss static vs.dynamic object creation.Object cre-ation is static before program execution,but dynamic during program execution.2Fleury[3],in her research on how beginners’students understand the construc-tion and use of objects in Java,found that students construct a rule:“The only purpose of invoking a constructor is to initialize the instance variable of an ob-ject.”El-Qawasmeh and Mahafzah[4]point out that some of the effect of the execution of a constructor is hidden even when the constructor is defined by the programmer.Textbook writers teach constructors at different stages.In Koff-man and Wolz[5],thefirst examples do not declare constructors.Subsequently, they describe the default constructor and only much later they explain how to define constructors.Bishop[6],on the other hand,refers to constructors at the very outset.3The ResearchThe experimental course was taught to tenth-grade students with no background in computer science.The approach of the course is objects-first,and our main interest is in evaluating the possibility of replacing a procedural-programming course.The population included19students during thefirst year the course was taught and30students during the second year.The data about students com-prehension,and their difficulties and misunderstandings was collected according to qualitative research methods by observations on all the lessons,worksheets and homework,and interviews with the students who submitted this work.The lab exercises are carried out using the BlueJ environment for teaching OOP[7]. BlueJ supports visualization of classes and objects,and execution of individual methods on objects without writing a test harness.4The Multiple ChoiceIn this section,we present one of thefirst examples in our course and the various constructor paradigms that we have used during the past two years.The source code of the examples is available on our web site.Class Pepper represents the vegetable pepper whose attributes(fields in Java) are:the weight,the number of pieces and its color(for which we use String type for simplicity).The methods of Pepper include mutators and accessors for each attribute,and two simple methods:cutIntoTwoPieces()which cuts each piece of the pepper into two pieces,and cutIntoNumPieces(int n)which cuts each piece of the pepper into n pieces.Class PepperSalad represents a pepper salad containing three attributes of type Pepper,each of which is intended to be of a different color:green,red and yellow.The methods of PepperSalad include mutators and accessors,and two simple methods corresponding to those in the Pepper class: cutIntoTwoPieces which cuts each piece of the pepper salad into two pieces,and cutIntoNumPieces(int n)which cuts each piece of the pepper salad into n pieces.We will describe four paradigms in each of two contexts,simple and composed classes.A class whose attribute types are primitive is called a simple class,and a class whose attribute types include user-defined types is called a composed class.The different paradigms relate to the constructor method definition and to3 the initialization of attributes:(1)An empty constructor;attributes get default values.(2)An empty constructor;attribute values are initialized by values in their declaration.(3)A constructor method that initializes the attributes with constant values.(4)A constructor method that includes parameters for each of the class attributes;attributes are initialized by the corresponding parameters.The following table describes the four main paradigms for each of the two categories of classes.Each version is denoted by a three-letter acronym:class category(S=Simple class,C=Composed class),whether attributes are ini-tialized in their declarations or not(V=attributes initialized by Value,N=No values in declaration),and the form of the constructor(E=Empty constructor, V=initialize attributes Values,P=initialize attributes by Parameters values). Version Class category Attributes initialized Constructor formin the declaration1-S/N/E Simple No values Empty2-S/V/E Simple Values Empty3-S/N/V Simple No values Constant values4-S/N/P Simple No values Parameters5-C/N/E Composed No values Empty6-C/V/E Composed Values Empty7-C/N/V Composed No values Constant values8-C/N/P Composed No values Parameters5Comparing ParadigmsWe will analyze the paradigms according to the semantic context,the operational consequences which appear when you instantiate an object and assigns values to attributes,and how students analyze and understand the application.5.1The semantic contextFor each paradigm you can associate a semantic context based on how the appli-cation relates to a real-world problem.The creation of an“empty”object with default values(1-S/N/E,5-C/S/E)does not correspond with the real world, nor does the creation of all objects with the same values for all the attributes (2-S/V/E,3-S/N/V,6-C/V/E,7-C/N/V).Similarly,there is no real-world cor-respondence in the creation of simple objects in the process of creation the com-posed class object(6-C/V/E,7-C/N/V).The professional paradigm(4-S/N/P, 8-C/N/P)closely corresponds with the real world,in which each attribute gets a relevant value.In the composed class it is also better to previously create its components from the simple class and only later associate them with the corresponding attributes using parameters.45.2Influence On ProgrammingOO programs almost invariably begin by creating objects.If we choose one of the paradigms,except for the professional paradigm,we have to execute mutator methods in order to specify a value for each of the attributes,or in order to change the constant values for specific objects.In the professional paradigm,no further actions are needed.Another issue is the constraints on the possible combination of the paradigms in a project that contains both simple classes and composed classes.Some combi-nations are not possible,for example,if the composed class invokes constructors with parameters,the constructor for the simple class must also have parameters.5.3Students’ComprehensionIn this section,we summarize aspects of students comprehension,based upon our research results,obtaining from teaching different paradigms.Some diffi-culties were paradigm-specific,while others were common to some or all of the paradigms.–For all paradigms:Students have difficulty understanding instantiation.Some of them thought that the declaration of the constructor method is sufficient to instantiate an object.–For all paradigms:It is difficult to understand the new statement,because it causes both object allocation as well as constructor invocation.–For all paradigms:Students had difficulty understanding the meaning of the constructor method and its place within the class.For example students said:“The attributes belong to the class,the constructor method belongs to the object because it creates an object.”There is confusion between the static class declaration which includes the constructor declaration,and the dynamic object creation in executing the constructor method.–1-S/N/E paradigm:Students had difficulty in understanding an“empty”instantiation,they asked:“What is an empty value?”or“What is an empty creation;is there an object or not?”.–1-S/N/E paradigm:Students forgot to invoke the mutator methods after the creation of an empty object,and before using it.–2-S/V/E paradigm:The distinction between a class and an object is difficult for novice OOP-students.From the sentence:“Attributes are declared in the class,and attributes values describe a specific object of the class,”some students drew a wrong conclusion about constructors:“[The constructor]is an object because attributes have values,and values belong to objects and not to classes.”–2-S/V/E paradigm:Students thought that if attributes have already been initialized with values,then there is no need to instantiate the object.One comment was:“If you are saying that attributes belong to classes and values belong to specific objects,then why doesn’t the assignment of values to attributes mean that there is an object already?”5–2-S/V/E and3-S/N/V paradigms:Students saw a false correlation between reality and the created objects.They asked:“Do all the objects have the same attribute values?”–4-S/N/P paradigm:The complexity of the parameter mechanism makes this paradigm difficult to understand by novice students.–For composed paradigms(5–8):It is difficult to understand that the type of an attribute can be a user-defined class.They said:“The attributes of the PepperSalad are weight,number of pieces and color,”when in fact there are three attributes of used-defined type Pepper.–8-C/N/P paradigm:Students assumed that if the component objects have already been created,there is no need to create the object of the composed class.6DiscussionWhen we combined all these criteria,we came to the conclusion that the4-S/N/P and8-C/N/P paradigms are preferable.This preference is justified as follows:–Constructors should be taught at an early stage because they are always used,even if implicitly,so there is no advantage to avoiding explicit teaching of this concept.–The reasons to reject the1-S/N/E paradigm are:(a)Default values are usually irrelevant to a given problem.(b)Initialization by invoking mutators is complicated,because they also require the introduction of parameters.(c) This paradigm is not consistent with the concept of instantiation.–The reasons to reject the2-S/V/E and3-S/N/V paradigms are:(a)Initial-ization of all objects with the same values rarely corresponds to the real word.(b)Assigning constant values in the class declaration confuses stu-dents.However,there are some advantages to these paradigms:They prevent accessing an uninitialized attribute,and there is no need to invoke large num-bers of mutators.Between the two paradigms,we prefer3-S/N/V,because it concentrates the initialization within the constructor method.–We prefer the4-S/N/P and8-C/N/P paradigms because they allow us to emphasize good OOP principles:•The constructor is very important,so it is better to expose it than to conceal it.•Initializing an object with values for its attributes is more in accordance with the real world.•Creation of simple objects before creation of composed class object is also more in accordance with the real world.•Initializing values to attributes in the constructor method avoids access to default values.•Parameters are needed anyway at an early stage for mutators,so they are not an extra burden in constructors.6•Assigning values to parameters in each instantiation emphasizes the cre-ation of different objects with possibly different values.•Learning this paradigm in simple classes makes it easier to understand the property of composed classes where attributes are the objects them-selves and not the attributes of the objects.7ConclusionFrom our experience in teaching OOP to novices,we found that one of the ma-jor difficulties is to understand the creation of object by the constructor.We believe constructors should be taught from the beginning and in the common professional paradigm.This is not trivial but not impossible.The key to success is to devote sufficient time to learning basic concepts such as classes,objects, attributes and methods with parameters,and only then to study their implemen-tation in Java.We use verbal and graphic representations of classes and objects, and the students practice instantiation and method invocation within the BlueJ learning environment.When students begin programming in Java,they continue to use the paradigm which becomes familiar.The teaching process must empha-size the instantiation process.Each object has its own set of attribute values,and we have to instantiate it accordingly,maintaining a correspondence with the real world.We believe that these principles will enable successful teaching to novice students of the constructor concept as it is used in professional programming. References[1]Holland,S.,Griffiths,R.,Woodman,M.:Avoiding object misconceptions.SIGCSEBulletin29(1997)131–134[2]Corradi,A.,Leonardi,L.:Static vs.dynamic issues in object oriented programminglanguages.Journal of Object-Oriented Programming(October2000)[3]Fleury,A.E.:Programming in java-students-construct rules.SIGCSE Bulletin32(2000)197–201[4]El-Qawasmeh,E.,Mahafzah,B.:Poorly designed features of c++constructors.Journal of Object-Oriented Programming(March2001)[5]Koffman,E.,Wolz,U.:Problem solving with Java.Addison-Wesley(1999)[6]Bishop,J.:Java Gently.Addison-Wesley(2001)[7]K¨o lling,M.:Teaching object orientation with the BlueJ environment.Journal ofObject-Oriented Programming12(1999)14–23。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hendra Widjaja and Michael J. Oudshoorn Department of Computer Science The University of Adelaide Adelaide, South Australia 5005 E-mail: fhendra,michaelg@.au
Abstract
Keywords: program visualisation, concurrent, parallel, object-oriented.
1 Introduction
Program visualisation is the use of graphical artifacts to represent both the static and dynamic aspects of a program 15, 20]. It takes advantage of the human visual ability to perceive pictorial representations of a program faster than the corresponding textual information. Generally, such visualisation is used to enhance human understanding of a program or algorithm 20]. Program visualisation can be used for many programming paradigms, including the concurrent and object-oriented paradigms. Each paradigm needs a di erent approach, as they utilise di erent methods of problem solving, and can bene t from
Program visualisation can be de ned as the application of graphical constructs to an algorithm or a program in order to visualise and understand its execution, methods, elements and purposes. It can be applied to a wide range of programming domains. It can also be used as a tool during program development. One such use is for understanding and debugging concurrent object-oriented programs. This paper describes Visor++, a tool for these purposes. It Байду номын сангаасrovides a coherent set of views that can easily be related back to the program being visualised. Furthermore, the tool is designed to have a loosely-coupled architecture, which is relatively easy to change and extend.
Programmer’s Execution Mental Model
Figure 1: Mental, static, and dynamic models of a program. visualisations which emphasise those aspects particular to that paradigm. Visualisation can also be used throughout the program development life-cycle, e.g. during the testing, veri cation and maintenance steps 14]. The visual aspects of program visualisation can make these tasks easier. A simple model of program development cycle is illustrated in Figure 1. First, a programmer creates a mental model of the software/program. This original mental model is then transformed into the corresponding static model using program development tools, such as text editors, CASE tools, and compilers. In this context, a static model comprises source code, the associated binary code, and other intermediate code forms. After the static model is created, it is transformed into the corresponding dynamic model. This model refers to the run-time behaviour of the program. The mapping is done by using program environment run-time control, such as operating systems. This dynamic model can furthermore be mapped into the programmer's mental model, which is a mental representation of the program execution. This mapping is important 6], because it enables the programmer to superimpose the execution mental model with the original mental model to nd the di erences between the initial program speci cations and the nal run-time outputs, or in other words, to identify bugs. Several methods exist to derive an execution mental model of a program from the dynamic program model, such as traditional software testing methods and reverse engineering. Generally, these methods heavily use non-graphical representations. As a result, a programmer may have to exert a considerable amount of e ort to construct this execution model. By using program visualisation tools, this problem is alleviated. The reason is that the tools provide information through visual representation
of program execution or elements. Since pictorial information is generally easier to understand, the visual representation provides a matrix or skeleton from which programmers can derive their own mental models. In e ect, this accelerates the whole process of software development. It is worth noting that the use of visualisation tools acts more as a complement to the use of other traditional software development tools, such as CASE tools, and textual debuggers. It can not replace the use of these tools. Used in this way, program visualisation adds more perspectives and understanding of the overall software or program. Based on the above discussion, the use of program visualisation for concurrent and object-oriented programs is very important. There are two reasons for this. The rst reason is that complex run-time structures and relationships among program elements may be produced by such programs. This complexity cannot be well captured and represented merely by using textual-representation tools, such as conventional program debuggers and program browsers. Such tools usually provide only snapshots of run-time program structures and states. Basically, they do not convey information holistically. The second reason is that these snapshots and textual information require re-interpretation by the programmer. As previously stated, the use of program visualisation tools can help programmers more easily derive a mental model from the visual representation of program execution or elements. This paper discusses Visor++, a program visualisation tool for concurrent and object-oriented programs. Section 2 discusses the motivation and goals for building the tool, while Section 3 describes the architecture and the approach used to build the tool. The implementation of Visor++ is described in Section 4. Some work related with Visor++ is discussed in Section 5, and Section 6 concludes the whole discussion.